0

代码

<select id="example">
    <option value="38">Marco</option>
    <option value="39">Hello</option>
</select>​

$("#example> option").click(function () {
    alert("ciao");
});

单击下拉项目,不显示警报... IE 和 Firefox 没有问题..

4

3 回答 3

1

使用$('#example').change(...)- 选择/单击一个元素将更改选择框的值,这样应该可以工作。

于 2012-04-16T19:50:16.570 回答
1

请改用更改功能 - 它非常适合下拉菜单。

$('#example').change(function() {
    alert('ciao');
});
于 2012-04-16T19:51:40.140 回答
1

似乎是在元素.change()上进行此操作的正确方法。<select>

<select>但是请注意,一旦在因为this引用<select>元素而不是元素的更改事件上触发了更改事件,您就必须手动检索该选项<option>

你必须这样做:var $selected = $(this).find(":selected");

$selected将包含选择选项,或者如果启用了多选,则包含多个选择的选项。

只是想澄清一下.change()是用于<select>元素而不是<option>元素。

于 2012-04-16T20:02:21.387 回答