0

这是HTML代码:

<select name="gender" id="gender">
  <option value="MAN">MAN</option>
  <option value="WOMAN">WOMAN</option>
</select>

这是jQuery:

$("#gender").val("");

IE 在所选列表中不显示任何内容(这就是我想要的)。Firefox 和 Chrome 显示“MAN”!我该怎么做才能强制 Firefox 和 Chrome 让所选列表为空?谢谢

PS我不想添加空白选项

4

5 回答 5

3

您不能选择一个不存在的选项(在您的情况下,一个没有价值的选项)。您可以在前面添加一个空选项,然后将值设置为空:

$('#gender').prepend('<option />').val('');

这是一个小提琴


编辑

作为对您的评论的回应,您可以隐藏新选项:

$('#gender').prepend('<option style="display: none;">Choose</option>').val('');

小提琴

于 2013-05-08T11:33:49.020 回答
1

$("#gender").val("");将使用空值设置选项,您现在在当前的 HTML 代码中没有。

添加一个空选项<option value=""></option>,它应该可以在所有浏览器中使用。

于 2013-05-08T11:32:26.720 回答
0

尝试这个 -

<select name="gender" id="gender">
  <option value=""></option>             <-- added a blank option
  <option value="MAN">MAN</option>
  <option value="WOMAN">WOMAN</option>
</select>
于 2013-05-08T11:29:30.663 回答
0

就像$("#gender").val()你可以获得价值一样

.val()方法主要用于获取表单元素的值

不是.val("")

于 2013-05-08T11:36:10.260 回答
0

如果你想要它pageloadonchange事件,那么你可以在最后附加.change()事件:

$(function(){ //<---------this is doc ready
  $('#gender').change(function(){
     alert($(this).val());
  }).change(); //<----this will triggerred on page load.
});
于 2013-05-08T11:37:51.033 回答