如果名称包含[和],如何选择具有给定名称的所有输入?

时间:2011-09-07 16:24:35

标签: javascript jquery forms input

如果名称包含[和]?

,如何选择具有给定名称的所有输入
$('input[name=field_name[array_key]]').removeClass('selected');

控制台:

  

未捕获的语法错误,无法识别的表达式:[name = field_name [array_key]]

感谢您的回答!

4 个答案:

答案 0 :(得分:1)

$('input[name=field_name\\[array_key\\]]').removeClass('selected');

答案 1 :(得分:1)

转义[]字符

等特殊字符
$('input[name=field_name\\[array_key\\]]').removeClass('selected');

答案 2 :(得分:1)

您需要使用“\\

进行转义

来自Jquery docs:

  

如果您想使用任何元字符(例如   !“#$%&'()* +,。/:;< =>?@ [] ^`{|}〜)作为名称的字面部分,你必须   用两个反斜杠转义字符:\。例如,如果你   有一个id =“foo.bar”的元素,你可以使用选择器   $( “#FOO \的.bar”)

答案 3 :(得分:0)

name值放在引号中:

$('input[name="field_name[array_key]"]').removeClass('selected');

正如jQuery docs所说:

  

报价是强制性的

以上是上述代码的live example