为什么此处理程序无法在Chrome上运行?

时间:2012-04-16 19:48:21

标签: jquery google-chrome

Code

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

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

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

3 个答案:

答案 0 :(得分:1)

使用$('#example').change(...) - 选择/点击元素会更改选择框的值,以便它可以正常工作。

答案 1 :(得分:1)

使用更改功能 - 它非常适合下拉。

$('#example').change(function() {
    alert('ciao');
});

答案 2 :(得分:1)

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

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

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

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

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