4

我有以下 HTML:

<select>
    <option value="0">Remove Me</option>
    <option value="1">Test 1</option>
    <option value="2">Test 2</option>
    <option value="3">Test 3</option>
    <option value="4">Test 4</option>
    <option value="5">Test 5</option>
</select>

我希望当用户单击选择时,删除值为“0”的选项。这是我正在使用的 jQuery 脚本:

$('select').on('click',function(){
    $(this).find('option[value="0"]').remove();
});     

这在 Firefox 和 IE(10,9,8) 中有效,但在 Chrome 中,当该选项被删除时,最后一个被复制如下:

在此处输入图像描述

如果我再次单击选择,当它展开时,重复的选项就消失了。为什么这不像在 FireFox 中那样首先工作?

这是我的问题 - http://jsfiddle.net/FN5jL/1/

4

1 回答 1

3

作为一种解决方法:

演示

$('select').one('focus',function(){
    $(this).find('option[value="0"]').remove();
});     

我不知道这种奇怪的行为来自哪里......

于 2013-08-08T14:44:52.207 回答