我有一个遗留的PHP应用程序,它在表单元素的命名中使用了括号,例如
<select name="samplegroup[776]" id="samplegroup[776]">
<option value="1">1</option>
<option value="2" selected >2</option>
<option value="3">3</option>
</select>
<select name="samplegroup[883]" id="samplegroup[883]">
<option value="1">1</option>
<option value="2" selected >2</option>
<option value="3">3</option>
</select>
如何匹配jQuery中带有samplegroup
后跟括号中数字的选项?例如。 $("what_do_i_write_here")
?
答案 0 :(得分:4)
您需要在jQuery选择器中使用\\
转义括号。
除此之外,您可以使用^=
序列告诉jQuery(Sizzle)您要查找的属性应该以开头。
$('select[name^="samplegroup\\["]').doSomething();
答案 1 :(得分:2)
这比使用名称更有效。
$("#samplegroup\\[883\\]")
答案 2 :(得分:1)
使用attributeStartsWith
选择器:
$('select[name^="samplegroup"]')
这可能无关紧要忽略方括号部分中的数字,除非您碰巧还有其他select
元素,name
以samplegroup
开头。< / p>
答案 3 :(得分:0)
我将选择修改为
<select name="samplegroup[776]" id="samplegroup_776">
然后
$("select.samplegroup_776"). //...
或者你需要ID中的括号吗?我理解名称标签,但我不认为ID应该这样命名。