单选按钮组的jquery选择器,其中name属性值具有数组表示法

Jay*_*ran 4 jquery jquery-selectors radio-button

我想使用带有数组表示法的单选按钮组的jquery选择器

我有这样的单选按钮

<input name="show[]" type="radio" value="1" /> Show<br>
<input name="show[]" type="radio" value="0" /> Hide<br>
Run Code Online (Sandbox Code Playgroud)

我想在上面使用jquery选择器并尝试以下方法

$("input:radio[name=show[]]").click(function(){
    alert(this.value)
})
Run Code Online (Sandbox Code Playgroud)

这是行不通的

我知道我们可以给出show而不是show []作为单选按钮的name属性

但IE有问题所以通过在所有浏览器中使用数组表示法给出.

现在我想像我所做的一样,是可能的还是包含数组符号的不同语法?

Ror*_*san 11

您需要转义选择器中的方括号:

$("input:radio[name=show\\[\\]]").click(function(){
    alert(this.value)
})
Run Code Online (Sandbox Code Playgroud)

正如James Allardice所提到的,你也可以在属性周围加上引号来阻止歧义:

$("input:radio[name='show[]']").click(function(){
    alert(this.value)
})
Run Code Online (Sandbox Code Playgroud)

更好的是,使用一个班级.

  • +1.或者,您可以引用选择器的属性值部分. (3认同)