在我的jquery体验中,除了字母数字(当然还包括id和类选择器)之外,我没有遇到过使用字符串选择器中使用的其他字符,现在在我当前的项目id中包含[]并将其放在字面上我的选择器,它根本不起作用。
<select name="pdcompany[0]" id="pdcompany[0]">
<option value="0">
Please select
</option>
我已经阅读了有关从文档创建选择器http://api.jquery.com/category/selectors/的规则并遵循它们但仍然无法正常工作的规则。我错了什么?
selector = "#pdcompany\\[0\\] > option:selected";
alert('Selector: ' + selector);
alert($(selector).text());
这是我处理你的小提琴http://jsfiddle.net/laupkram/Fd42a/
更新
已经修正了选择器中的一些错误......缺少#
答案 0 :(得分:2)
您不需要“&gt;选项:已选择”,因为.val已经为您提供了该选项。只是做:
selector = "#pdcompany\\[0\\]";
答案 1 :(得分:1)
$('[id="pdcompany[0]"]').text();
怎么样?使用引号和attribute selector。
翻译供您使用:
$('[id="pdcompany[0]"] option:selected')...
顺便说一句,除非您的选择是multiple
,否则无需使用option:selected
。 .val()
可以很好地运作。