具有多属性的jQuery复选框选择器
我有一个jQuery选择器不工作,请尽我最大的努力修复它。有什么建议吗具有多属性的jQuery复选框选择器,jquery,attributes,checkbox,selector,Jquery,Attributes,Checkbox,Selector,我有一个jQuery选择器不工作,请尽我最大的努力修复它。有什么建议吗 $(':checkbox:(not(:checked))[name=this.name][value="Done"]').attr({ checked: 'checked', disabled: 'disabled' }); 它应该选中并禁用一个复选框,如果该复选框尚未选中,则其名称属性为this.name,值为
$(':checkbox:(not(:checked))[name=this.name][value="Done"]').attr({
checked: 'checked',
disabled: 'disabled'
});
它应该选中并禁用一个复选框,如果该复选框尚未选中,则其名称属性为this.name,值为Done
我一直在摆弄它,但我不知道这是否管用。这应该可以:
$('input[name=' + this.name + '][value=Done][type=checkbox]:not(:checked)').attr({
checked: 'checked',
disabled: 'disabled'
});
更新示例:
您需要将this.name
的值连接到选择器中
我还向选择器添加了input
,使其更快
另外,在:not()
周围还有一个额外的()
,因此它看起来像:(not())
,这是无效的
编辑: 我只是想指出,我已经用
[type=checkbox]
替换了:checkbox
选择器,以使您的选择器对querySelectorAll
有效
现在,它将在支持qsa
的浏览器中获得巨大的性能提升,这应该可以做到:
$('input[name=' + this.name + '][value=Done][type=checkbox]:not(:checked)').attr({
checked: 'checked',
disabled: 'disabled'
});
更新示例:
您需要将this.name
的值连接到选择器中
我还向选择器添加了input
,使其更快
另外,在:not()
周围还有一个额外的()
,因此它看起来像:(not())
,这是无效的
编辑: 我只是想指出,我已经用
[type=checkbox]
替换了:checkbox
选择器,以使您的选择器对querySelectorAll
有效
现在,它将在支持
qsa
的浏览器中获得巨大的性能提升,将[name=this.name]
更改为[name=“”+this.name+”]
和
:checkbox
到[type=“checkbox”]
将
[name=this.name]
更改为[name=“”+this.name+”]
和
:checkbox
到[type=“checkbox”]