我有两个隐藏的输入字段:
<input type="hidden" name="institut" id="institut" value="blablub" />
<input type="hidden" name="institut[0]" id="institut[0]" value="moreblablub" />
Run Code Online (Sandbox Code Playgroud)
我有这个调试代码:
console.log("#institut: " + $("#institut").val());
console.log("#institut[0]: " + $("#institut[0]").val());
Run Code Online (Sandbox Code Playgroud)
我得到这个控制台输出:
#institut: blablub
#institut[0]: undefined
Run Code Online (Sandbox Code Playgroud)
我试图用反斜杠逃避方括号,但这并没有改变任何东西.有没有办法获得复杂的ID?
您不应该为id使用非字母数字字符.
但如果你这样做,你可以这样做:
var element = document.getElementById("institut[0]");
var $element = $(element);
Run Code Online (Sandbox Code Playgroud)
演示:http://jsfiddle.net/maniator/sWnJN/
要么
var $element = $("#institut\\[0\\]");
Run Code Online (Sandbox Code Playgroud)
演示:http://jsfiddle.net/maniator/sWnJN/1/
甚至:
var $element = $("[id='institut[0]']");
Run Code Online (Sandbox Code Playgroud)
演示:http://jsfiddle.net/maniator/sWnJN/2/