特别是在复选框问题上


原来的代码

function chk_all($cid,$iname)
{
    if($("#"+$cid+":checked").val()=="1")
    {
        //全选
        $("input[name='"+$iname+"']").attr("checked",true);
    }
    else
    {
        //取消全选
        $("input[name='"+$iname+"']").attr("checked",false);
    }
}

在jquery 1.6以上版本,执行第一次有效,第二次以后虽然会加上属性,但是没有勾了。


1.6以上应该使用prop方法


如下:


function chk_all(obj)
{
    if($(obj).is(':checked')==true)
    {
        alert($(obj).is(':checked'));
        $("input[type='checkbox']").prop("checked",true);
    }
    else
    {
        $("input[type='checkbox']").prop("checked",false);
    }
}