【发布时间】:2013-04-02 03:07:26
【问题描述】:
我正在使用 asp.net mvc 开发一个网站,并且我有这张在单击时会触发 Ajax 事件的图像。它在 FF 和 IE 7 & 8 上工作得很好,但在 IE 6 上它甚至不调用控制器上的方法(我确实在那里放了一个断点并在调试模式下运行它来检查)。我已经在这几天了,找不到解决方案。这是我的代码:
<img src="/Content/Images/img.png" onclick="HideAll(); GetMyVonparDiv(this);
$.ajax({ url: '/<%= Html.ViewContext.RouteData.Values["language"] %>/myvonpar/AddContent/?idContent=<%= ViewData.Model.id_content.ToString() %>&static=<%= ViewData.Model.is_static %>',
type: 'GET',
success: function (msg) { if (msg == 'True') { $(parentDiv).prev('.ok').show(); } else { $(parentDiv).show(); } },
error: function (msg) { }
});" />
该方法的 url 生成正确 (/pt/myvonpar/AddContent/?idContent=258&static=False),正如我之前所说,它适用于除 IE6 之外的所有其他浏览器:(
编辑:相同的 JS 代码被格式化以提高可读性:
HideAll();
GetMyVonparDiv(this);
$.ajax({
url: '/<%= Html.ViewContext.RouteData.Values["language"] %>/myvonpar/AddContent/?idContent=<%= ViewData.Model.id_content.ToString() %>&static=<%= ViewData.Model.is_static %>',
type: 'GET',
success: function (msg) {
if (msg == 'True') {
$(parentDiv).prev('.ok').show();
} else {
$(parentDiv).show();
}
},
error: function (msg) { }
});
【问题讨论】:
-
有时您需要停止支持十年前的浏览器。
-
我从没见过onclick属性里面有这么多代码...
-
@Chris IE6 仍然保持两位数 (>10%)。也许在一年内......
-
如果您将 onclick 处理程序放入单独的方法中而不是内联到 html 中,您将更容易调试。只是说:)
-
@Chris 维基百科是 7.6%。 Netapplications 为 13.72%。就像我说的,也许在一年内……你知道,2012 年,IE6 的终结 :)
标签: c# asp.net-mvc jquery internet-explorer-6