jquery选择带动态id的选项列表

时间:2013-02-18 05:13:27

标签: jquery

我有一个带有ID的选项列表,有时可能是其中之一:

edit-panes-billing-billing-zone
edit-panes-billing-billing-zone--1
edit-panes-billing-billing-zone--2
edit-panes-billing-billing-zone--3
edit-panes-billing-billing-zone--4

一次只有一个选择元素。

是否可以使用jQuery动态选择选项列表?
这就是我尝试过的,但它不起作用:

$("select[id^='edit-panes-billing-billing-zone--']").each(function() {
    alert('test'):              
}

4 个答案:

答案 0 :(得分:1)

您的代码中存在许多失败的语法错误:

alert('test'):  

应该是

alert('test');  

并且

alert('test'):              
}

应该是

alert('test');              
});

最终结果应为:

$("select[id^='edit-panes-billing-billing-zone--']").each(function() {
    alert('test');             
});

在我运行的所有测试中都取得了成功。

答案 1 :(得分:0)

尝试

$(document).ready(function() {
    $('select option[id^="edit-panes-billing-billing-zone--"]').each(function(){
         alert($(this).text());
    });
});

答案 2 :(得分:0)

为您拥有的每个选择提供属性类,例如

<select class="my-select" id="edit-panes-billing-billing-zone"></select>
<select class="my-select" id="edit-panes-billing-billing-zone--1"></select>
<select class="my-select" id="edit-panes-billing-billing-zone--2"></select>
<select class="my-select" id="edit-panes-billing-billing-zone--3"></select>
<select class="my-select" id="edit-panes-billing-billing-zone--4"></select>

然后代码是(按类获取元素):

$(document).ready(function() {
    $(".my-select").each(function() {
       alert('test');              
    });
});

答案 3 :(得分:0)

您的问题不是很明确 I have an option list with an id

option list,我相信这些是<select>个标签。

$("select[id^='edit-panes-billing-billing-zone--']").change(function() {
    alert('test'):              
});

如果我们使用您的代码,那么您应该尝试这种方式:

$("select[id^='edit-panes-billing-billing-zone--']").each(function() {
    $(this).change(function(){
        alert('test');
    });              
});

注意:

最后您的代码遗失});,而您的提醒以colon-> :而不是semicolon ';'

结尾

而不是.each()尝试.change()事件。