JQuery - 使用选择器名称

时间:2015-06-26 12:29:57

标签: jquery

我创建了这段代码:

$("input[name*='Gridview1$ctl02']").each(function () {
   if(this.type == 'checkbox'){
       if(this.checked == true){
           alert("test")
        }
       else
        {
           alert("test2")
        }
    }
})

我写这个$("input[name*='Gridview1$ctl02']")时很好,但我需要ct101,ct102,ct103

的数组

enter image description here

我需要这样的东西:

$("input[name*='Gridview1']").find("ct").each ...

2 个答案:

答案 0 :(得分:4)

您可以简单地创建一个选择器,以匹配其名称以Gridview1开头的任何元素:

$("input[name^='Gridview1']").each(function () {if(this.type == 'checkbox'){if(this.checked == true){alert("test")}else{alert("test2")}}})

如果您只想要文字输入,请选择

$("input[name^='Gridview1'][type='text']").each(function () {if(this.type == 'checkbox'){if(this.checked == true){alert("test")}else{alert("test2")}}})

答案 1 :(得分:3)

这样的内容应该匹配您需要的所有名称和已选中复选框的名称:

$("input[name^='Gridview1$ctl'][type='checkbox']:checked")

在此处查看(它会在您点击测试后提醒已选中复选框的名称):

function test() {
  $("input[name^='Gridview1$ctl'][type='checkbox']:checked").each(function() {
    alert($(this).attr('name'));
  })
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" name="Gridview1$ctl01" />
<input type="text" name="Gridview1$ctl02" />
<input type="checkbox" name="Gridview1$ctl03" />
<button onclick="test()">Test</button>