我在搜索表单中输入了这个选择框:
<select name="searchFor" id="searchFor">
<option name="option0" value="Choice">Pick one</option>
<option name="option1" value="person">Person</option>
<option name="option2" value="title">Title</option>
</select>
因为top选项不应该是可选的,所以我使用JQuery删除它:
$("#searchFor").focus(function() {
$(this).find("option").eq(0).remove();
});
除了Internet Explorer的外景之外,它就像魅力一样。 在所有浏览器中,选择select-tag时将删除option0。 在IE中,仅在选择其中一个选项后才会删除该选项。这让你总是选错了。 该动作也会重复,直到所有选项都消失。
任何人都知道如何在IE中使用它?
因此,当select被激活时,应该从select-tag中删除top-option。
欢呼声
答案 0 :(得分:0)
解除像这样的焦点事件
$("#searchFor").on('change',function() {
$(this).find("option").eq(0).remove();
$(this).off('change');
});
答案 1 :(得分:0)
尝试以下操作,使用&#34; focusin&#34; event和one()函数使事件处理程序只运行一次。
$("#searchFor").one("focusin", function() {
$(this).find("option").eq(0).remove();
});