获取具有特定值的复选框

2020/12/31 14:41 · jquery ·  · 0评论

我想获得带有特定值的复选框,并选中它。

我像这样

$(":checkbox").filter({"value":5}).attr("checked","true");​

这是HTML

​<input type="checkbox" name="priv"​​​​​​​​​​​​​​​​​​​​​​​​​​​​​ value="1"​​​​​​​​​​​​​​​​​/>
<input type="checkbox" name="priv" value="2"/>
<input type="checkbox" name="priv" value="3"/>
<input type="checkbox" name="priv" value="4"/>
<input type="checkbox" name="priv" value="5"/>
<input type="checkbox" name="priv" value="6"/>
<input type="checkbox" name="priv" value="7"/>
 <input type="checkbox" name="priv" value="8"/>​

是问题演示

您可以使用Attribute Equals Selector [name =“ value”]来获取具有特定值的复选框。还要使用prop()而不是attr(),这是jQuery doc推荐的方法

现场演示

$(":checkbox[value=4]").prop("checked","true");

要么

$("input[type=checkbox][value=5]").prop("checked",true);

描述:选择具有指定属性的元素,该元素的值恰好等于某个值jQuery doc

您也可以使用attr()来做到这一点,但是prop更适合布尔属性。

$(":checkbox[value=4]").attr("checked","true");

从jQuery 1.6开始,.attr()方法为未设置的属性返回undefined。要检索和更改DOM属性,例如表单元素的选中,选定或禁用状态,请使用.prop()方法,jQuery文档

编辑,并在评论中询问:“看起来像带有复杂值(如value =“ Smith,David的answer / find-expression)。

您可以将诸如Smith,David之类的值括在单引号上。您甚至可以使用jQuery使用的字符,例如#,。,$等,请参见此处更新的小提琴

$("input[type=checkbox][value='#Smith, David$']").attr("checked","true");
$(":checkbox").filter(function() {
  return this.value == '5';
}).prop("checked","true");​

演示

如果要将其用于不同的值,请使其通用,如下所示:

function checkWithValue(val) {
    $(":checkbox").filter(function() {
        return this.value == val;
    }).prop("checked", "true");
}


checkWithValue(5);​

演示

$("input:checkbox[value='5']").attr("checked","true")

我有一个动态的值需要循环。这对我有用:

for (var i = 0, len = value.length; i < len; i++) {
  $("#form-name").find("input[type=checkbox][name='fName']").filter(function () {
    return this.value == values[i];
  }).prop("checked", true);
}

希望可以帮助某人。

它也可以与正方形练习一起使用

 $(":checkbox").filter(["value":5]).prop("checked","true");

有时我们想要动态获取特定值的复选框。

$(document).on('click','.at-filter a', function(){
    var aaa = $(this).parent().find("em").html();
    $("input[type=checkbox][value='"+aaa+"']").prop('checked',false)
});
$(":checkbox[value=5]").attr("checked",true);​​​
$("#catalogTBL").find("input[type=checkbox][value='snet']").prop("checked", true);

这是我可以使它起作用的唯一方法。在表中查找复选框。

本文地址:http://jquery.askforanswer.com/huoqujuyoutedingzhidefuxuankuang.html
文章标签: ,  
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!