【发布时间】:2016-07-30 23:08:51
【问题描述】:
我试图在鼠标悬停时返回动态填充的选择选项的值。从 ID 可能就可以看出,选择选项是由 ASP.NET 列表框创建的。
$("#MainContent_LocationListBox").on("mouseover", "option", function () {
alert($(this).val());
});
此方法适用于 Chrome,但不适用于 IE 11。
我一直在尝试其他人的解决方案来解决类似的问题,但没有运气。
我尝试过的:
- 不同版本的 JQuery(目前为 1.8.3)
-
.live方法 $(document).on("mouseover", "option", function ()$("#MainContent_LocationListBox option").on("mouseover", null, function ()- 循环选择选项并将鼠标悬停绑定到每个选项
- 添加
<meta http-equiv="X-UA-Compatible" content="IE=edge">(我找到的几篇文章的建议)
我也尝试过$("#MainContent_LocationListBox option:hover").val(),但效果非常不一致。
我打开了 Internet Explorer 调试,但没有返回错误。
【问题讨论】:
-
把你的委托事件监听器放在
$(document)选择器上是草率和浪费的;你应该把它们放在尽可能靠近目标的地方。 -
喜欢元素的 id 可能是@Robusto?就像 OP 的代码已经做了什么一样?
-
我仍然对为什么开发人员必须继续支持连微软都拒绝支持的浏览器感到困惑。
-
@Kendo 因为私人公司已经花费了数百万美元来构建不会很快消失的 IE 内部专有应用程序?
-
@ScottMarcus 没错,是的,从来没有考虑过。
标签: javascript jquery asp.net internet-explorer