JQuery按名称问题选择

时间:2016-07-25 10:52:47

标签: jquery syntax jquery-selectors

我有这个输入字段

<input name="Ops[2][Duration]" type="text" value="1" row-number="2">

我正在尝试按名称选择,但似乎

$('input[name=Ops[2][Duration]]');

与所有括号混淆。我该如何解决这个问题?我试过了

$('input[name=Ops\[2\]\[Duration\]]');

但那也不起作用,我仍然得到:

错误:语法错误,无法识别的表达式:input [name = Ops [2] [Duration]]

3 个答案:

答案 0 :(得分:2)

在jQuery选择器中,转义字符是两个反斜杠:\\

$('input[name=Ops\\[2\\]\\[Duration\\]]');

或者,您可以将属性值放在引号中:

$('input[name="Ops[2][Duration]"]');

答案 1 :(得分:2)

您可以将属性值包装在引号中:

$('input[name="Ops[2][Duration]"]');

答案 2 :(得分:1)

在配对引号中使用name属性值

$('input[name="Ops[2][Duration]"]');

$("input[name='Ops[2][Duration]']");

$(function(){
    $('input[name="Ops[2][Duration]"]').on('blur', function(){
        console.log($(this).val());
    });
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input name="Ops[2][Duration]" type="text" value="1" row-number="2">