Jquery 将空白选项添加到“选择”的顶部,并使其成为IE中的选定选项
HTML:Jquery 将空白选项添加到“选择”的顶部,并使其成为IE中的选定选项,jquery,html,forms,Jquery,Html,Forms,HTML: 沃尔沃汽车 萨博 梅赛德斯 奥迪 jQuery: <select id="dropdown"> <option value="volvo">Volvo</option> <option value="saab">Saab</option> <option value="mercedes">Mercedes</option> <option value="audi">Au
沃尔沃汽车
萨博
梅赛德斯
奥迪
jQuery:
<select id="dropdown">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
$(“#下拉列表”)。前置(“”);
当我在FireFox或Chrome中运行此功能时,下拉列表中选择了新插入的空白选项。当我在IE8中运行它时,它仍然选择了沃尔沃。有什么想法吗
试试:
$("#dropdown").prepend("<option value='' selected='selected'></option>");
或者,如果您愿意:
$("#dropdown").prepend(new Option('', '', true, true));
$("#dropdown option:first").attr("selected", "selected");
$(“#下拉列表”)。前置(“”);
$(“#下拉选项:第一”).attr(“选定”、“选定”);
使用第一个选项稍微快一点。空白引号表示空白值和空白文本,因此按需要填写。您不需要在前置中使用选定的属性,现在我们将在后面添加它们。这与internet explorer没有识别到它被标记为选中有关,因为它只是刚刚创建的。我不知道为什么您的代码不工作(可能与IE中,
selectedIndex
是只读的这一事实有关),但是,在IE中执行此操作:
$("#dropdown").prepend("<option value=''></option>");
$("#dropdown option:first").attr("selected", "selected");
$(“#下拉列表”)。前置(“”);
$(“#下拉列表”)[0]。选项[0]。选定项=true;
将其更改为此,它将工作:
$("#dropdown").prepend("<option value='' selected='selected'></option>");
$("#dropdown")[0].options[0].selected = true;
$(“#theselected”).prepend(“”.val(“”);
IE似乎只在第一次遇到select
$(“#id”)时计算selected
属性;
$("#theSelectId").prepend("<option value=''></option>").val('');
prepend会将该选项添加到顶部,selected='selected'会将其选中。因为value='',所以它是空值选项。这将把val设置为空。删除您最初选择的所有项目have@HarryBosh-…这正是OP所要求的。谢谢David Angulo的要求,请现在查看。
$("#id").prepend("<option value=' ' selected='selected'></option>");