3

在我的 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/

更新

已经修复了选择器中的一些错误...丢失#

4

2 回答 2

2

您不需要“ > option:selected”,因为 .val 已经为您提供了。做就是了:

selector = "#pdcompany\\[0\\]";
于 2012-12-20T03:15:32.083 回答
1

怎么样$('[id="pdcompany[0]"]').text();。使用引号和属性选择器

例子

翻译供您使用:

$('[id="pdcompany[0]"] option:selected')...

顺便说一句,除非您的选择是 a multiple,否则无需使用option:selected. .val()会很好地工作。

于 2012-12-20T03:14:01.757 回答