javascript - 使用 javascript 或 jQuery 清除 IE 中的选定选项

标签 javascript jquery html

想象一下这个 HTML 代码

<html>
<head>
<script src="http://code.jquery.com/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
function clear_form() {
  $("select#block_id").find("option").removeAttr("selected");
}
</script>
</head>
<body>
<form>
<select id="block_id" name="block_id">
<option value=""></option>
<option value="1">1 Peach Road</option>
<option value="2" selected="selected">Bethnal Green Estate</option>
<option value="3">Ley Street</option>
<option value="4">Ogilby Street</option>
</select>
<input type="reset" onclick="clear_form()" value="Clear"/>
<input type="submit"/>
</form>
</html>

当您在 Firefox 中打开此页面时,按下清除按钮将重置所选选项。 但这在 IE 中不起作用,浏览器不会引发任何错误,但仍会显示未选择的选项。 问题是因为我们有 'option value="2"selected="selected"' html 代码,看起来 IE 不会清除这个选择,它总是出现在页面上。 获得 native javascript 或 jQuery 1.5.2 解决方案会很棒。 有什么建议吗?

最佳答案

您可以使用 JavaScript 重置 select 以指向它的第一个 option 元素。

使用 jQuery...

$('#block_id').prop('selectedIndex', 0);

没有...

document.getElementById('block_id').selectedIndex = 0;

关于javascript - 使用 javascript 或 jQuery 清除 IE 中的选定选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9220010/

相关文章:

javascript - 从动态 htmlTable 在 vb.net 中获取数据

html - 在不复制 HTML 的情况下使用 Bootstrap 堆叠文本组件

javascript - 如何根据位置列表从 map 中删除标记?

c# - 有没有办法从 System.Windows.Forms.HtmlElement 转换为 mshtml.IHTMLElemenet3?

javascript - 在react js中更新事件的同级组件

jquery - 避免使用 jQuery 突出显示所有行和列

javascript - 基于单选/复选框状态的 Jquery 过滤

jquery kwicks 调整我的图像大小

javascript - jQuery 选择选中复选框的每一行中的所有文本框

javascript - 使用 JQuery $.AJAX 调用调用 ASP.NET 函数