jQuery遍历名称属性包含括号的复选框

时间:2018-11-09 19:40:34

标签: javascript jquery jquery-selectors

我有以下复选框:

<input type="checkbox" class="ids" name="ids[]" value="2">
<input type="checkbox" class="ids" name="ids[]" value="3">
<input type="checkbox" class="ids" name="ids[]" value="4">
<input type="checkbox" class="ids" name="ids[]" value="5">
<input type="checkbox" class="ids" name="ids[]" value="6">

我的问题是通过jquery,如何在表单提交过程中遍历id []?

$("#form").submit(function(e) {
  //Loop throught ids[] 
});

我已经尝试过了:

$('input[type=checkbox][name=ids[]]').each(function () {   
  console.log("Here");
});

但这没用

1 个答案:

答案 0 :(得分:1)

您的选择器无效。您应该使用[]转义\\

  

要将任何元字符(例如!"#$%&'()*+,./:;<=>?@[\]^`{|}~)用作名称的文字部分,必须使用两个反斜杠对它们进行转义:\\documentation

$('input[type=checkbox][name=ids\\[\\]]').each(function(){
  console.log(this.value);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" class="ids" name="ids[]" value="2">
<input type="checkbox" class="ids" name="ids[]" value="3">
<input type="checkbox" class="ids" name="ids[]" value="4">
<input type="checkbox" class="ids" name="ids[]" value="5">
<input type="checkbox" class="ids" name="ids[]" value="6">