假设我们在html选择中有三个选项 即选择,男,女。 点击后我想用“”替换select。
我试过以下代码。
<select id="ageID">
<option value="none" >loading...</option>
<option value="one" >one</option>
<option value="two">two</option>
<option value="three">three</option>
</select>
$("#ageID").on("click",function(){
$(this).children().first().remove();
$(this).children().first().before(" <option value='none' > </option>");
});
它完全适用于谷歌浏览器,但不适用于Mozilla或IE。 您可以尝试使用http://jsfiddle.net/运行它 请提供解决方案
答案 0 :(得分:0)
你可以这样做:
$("#ageID").on("click focus",function(){
this.options[0].text='';
});
我添加了focus
事件,因为我认为您希望尽快进行更改(仅click
不会出现这种情况)。
答案 1 :(得分:0)
试试这个:
$("#ageID").on("click",function(){
$(this).children().first().remove();
$(this).children().first().before('<option value="none"> </option>');
});
答案 2 :(得分:0)
为什么不试试这个:
$("#ageID").on("click",function(){
$('option:first',this).text('');
});
答案 3 :(得分:0)
我想你想要这样的东西
$("#ageID").on("click",function(){
$(this).children().first().remove();
$(this).prepend("<option value='' ></option>");
});
答案 4 :(得分:-1)
你可以用简单的CSS模仿这个:
小提琴:http://jsfiddle.net/E4ah9/
HTML
<select id="ageID">
<option value="none" disabled selected class="placeholder">loading...</option>
<option value="one" >one</option>
<option value="two">two</option>
<option value="three">three</option>
</select>
CSS
.placeholder { display: none; }