我有一个输入名称formComponentsMap['order'].firstName
我将如何在jQuery中定位该特定输入?
完整输入html
<input name="formComponentsMap['order'].firstName" type="text" value="THOMAS" maxlength="20" class="form-control">
答案 0 :(得分:3)
你可以这样,使用转义字符“\\”
您可以在jQuery docs
上阅读有关在jQuery选择器中escpaing特殊字符的更多信息
$(function() {
console.log($("input[name='formComponentsMap[\\'order\\'].firstName']").val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input name="formComponentsMap['order'].firstName" type="text" value="THOMAS" maxlength="20" class="form-control">
答案 1 :(得分:0)
你需要这样做:
$("input[name=\"formComponentsMap['order'].firstName\"").val();
问题在于第二对""
将逃脱第一对,有效地将选择器切成两半并尝试定位input[name=\
。
Sreekanth逃避特殊字符的答案可能是最好的,但另一种解决方案是给输入一个ID并执行:
<input id="myInput"name="formComponentsMap['order'].firstName" type="text" value="THOMAS" maxlength="20" class="form-control">
和
$("#myInput").val();