0

我正在使用 jQuery Select2 2.1 并尝试将其应用于具有相同 id 类的多个选择标签。我的代码如下所示:

<select id="e1" style="width: 300px">
    <option value="AL">Alabama</option>
    <option value="WY">Wyoming</option>
    <option value="NY">New York</option>
</select>
...
<select id="e1" style="width: 300px">
    <option value="AL">Alabama</option>
    <option value="WY">Wyoming</option>
    <option value="NY">New York</option>
</select>

使用的javascript代码是:

<script>
    $(document).ready(function() { $('#e1').select2(); });
</script>

问题是只有第一个选择标签才能获得正确的 select2 类。我不知道 select2 是否允许这种类型的使用(我无法在文档中识别此信息),但另一个选项是在我将调整 php 代码后增加 javascript 函数{ $('#e1').select2(); }允许的增量,其中 $i 增加。{ $('#e(1..999)').select2(); }<select id="e<?php echo $i ?>" style="width: 300px">

我怎样才能做到这一点?谢谢。

4

2 回答 2

1

首先,您真的需要 2 个具有相同 id 的选择吗?

其次,要同时匹配两者,你可以这样做$('[id="e1"]').select2();- 但你不应该 imo。

于 2013-05-26T13:43:37.893 回答
1

使用具有相同 ID 的多个元素是非常糟糕的做法。改用一个类......这就是他们的目的。

HTML:

<select class="select2" style="width: 300px">
    <option value="AL">Alabama</option>
    <option value="WY">Wyoming</option>
    <option value="NY">New York</option>
</select>
...
<select class="select2" style="width: 300px">
    <option value="AL">Alabama</option>
    <option value="WY">Wyoming</option>
    <option value="NY">New York</option>
</select>

JavaScript:

$(document).ready(function() { $('.select2').select2(); });
于 2013-06-06T19:24:13.093 回答