复选框按属性查找名称和值

时间:2016-08-02 06:18:49

标签: javascript jquery html

在我的页面中,我有几组复选框。在某组复选框中,我添加了" documentcategory"属性到每个复选框。我想在我的页面中找到所有具有" documentcategory"的复选框。属性及其值是"购买"。请帮忙。这是我的方法。

HTML

<input type="checkbox" value="true" name="Documents[0].Checked" id="Documents_0" documentcategory="BUY">
<input type="checkbox" value="true" name="Documents[1].Checked" id="Documents_1" documentcategory="">
<input type="checkbox" value="true" name="Documents[2].Checked" id="Documents_2" documentcategory="">
<input type="checkbox" value="true" name="Documents[3].Checked" id="Documents_3" documentcategory="BUY">

的jQuery

 $("input[type=checkbox]").find("[attribute='documentcategory']").contains('BUY')

错误

TypeError: $(...).find(...).contains is not a function

我也尝试过其他方法。他们没有错误,但没有结果。

5 个答案:

答案 0 :(得分:3)

使用jQuery attribute selector,如下所示。

$(":checkbox[documentcategory=BUY]")

答案 1 :(得分:2)

contains方法用于检查其text / element而不是element的属性。

您可以链接属性相等选择器,如下所示:

$('input[type="checkbox"][documentcategory="BUY"]');

答案 2 :(得分:2)

你可以试试这个:

$("input[type=checkbox][documentcategory='BUY']");

&#13;
&#13;
 console.log($("input[type=checkbox][documentcategory='BUY']").length);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<input type="checkbox" value="true" name="Documents[0].Checked" id="Documents_0" documentcategory="BUY">
<input type="checkbox" value="true" name="Documents[1].Checked" id="Documents_1" documentcategory="">
<input type="checkbox" value="true" name="Documents[2].Checked" id="Documents_2" documentcategory="">
<input type="checkbox" value="true" name="Documents[3].Checked" id="Documents_3" documentcategory="BUY">
&#13;
&#13;
&#13;

答案 3 :(得分:0)

可以尝试.attr(attr-name) ....

$("input").each(function(){
   if($(this).attr('documentcategory') == "BUY") {
       //exist BUY 
   };   
})

答案 4 :(得分:0)

You can use this example for using checkbox each loop and get all checkbox id who have "documentcategory" attribute and it's value "BUY"

<input type="checkbox" value="true" name="Documents[0].Checked" id="Documents_0" documentcategory="BUY">
<input type="checkbox" value="true" name="Documents[1].Checked" id="Documents_1" documentcategory="">
<input type="checkbox" value="true" name="Documents[2].Checked" id="Documents_2" documentcategory="">
<input type="checkbox" value="true" name="Documents[3].Checked" id="Documents_3" documentcategory="BUY">

<script type="text/javascript" src="js/jquery.min.js"></script>
<script type="text/javascript">
     $('input[type=checkbox]').each(function () {
        var cust_attr=$(this).attr('documentcategory');
        if(cust_attr=='BUY')
        {
            alert($(this).attr('id'));
        }       
     });
</script>