【问题标题】:Modal popups in ASP.NET AJAX in IE9 not workingIE9 中 ASP.NET AJAX 中的模态弹出窗口不起作用
【发布时间】:2011-09-13 13:36:55
【问题描述】:

      连续几天与此作斗争 - 没有运气。试图让 ModalPopupExtender 与 IE9 一起工作。我对 .NET 3.5 和 4.0 都使用了最新的 AjaxControlToolki.dll 版本 50731。并且想知道 IE 什么时候会最终从地球上消失???请帮忙!!!!

此外 - 将 <meta http-equiv="X-UA-Compatible" value="IE=9"> 添加到母版页的 <head> 标记有助于弹出窗口,但会弄乱布局,并且由于它位于母版页中,因此会弄乱整个网站,因此无法使用此解决方案。很明显,IE9 CSS 处理和所谓的“兼容模式”是这个该死问题的原因 - 如何修复它!!!请帮忙!!!

【问题讨论】:

  • 如果它在您的 Intranet 中运行 - IE9 将始终默认为兼容模式。这就是为什么我猜测添加<meta http-equiv="X-UA-Compatible" value="IE=9"> 对你有用。但是,如果这弄乱了您的布局,则可能意味着您的布局样式属性与 IE9 或任何现代浏览器不兼容。您的网页是在 Chrome 还是 Safari 上运行的?
  • 在最新的 FF 和 Chrome 中一切正常。没有元标记布局看起来像预期的那样,在 IE9 中一切正常 - 除了弹出窗口。使用标签 - 弹出窗口在所有浏览器中都很好 - 但母版页面布局在所有浏览器中完全混乱。我们不能只针对 IE9,因为它有 20% 的用户,顺便说一句,份额正在稳步缩小,这让我非常高兴。仍然有 20% 的用户太多而无法忽略,所以我正在努力寻找解决方案。顺便说一句,IE 总是这样 - 你总是需要额外花费 50%-80% 的时间才能在 IE 中运行。
  • tag http-equiv="X-UA-Compatible" value="IE=9" 不应影响任何其他浏览器。它仅用于 IE 目的。顺便试试这个标签 <meta http-equiv="X-UA-Compatible" value="IE=edge" />

标签: asp.net-ajax internet-explorer-9 modalpopupextender


【解决方案1】:

如果不设置整个 Ajax.Net 控件,不确定您的问题到底是什么,但是如果您使用 jQuery Dialog / Modal 来代替呢?我使用它取得了巨大的成功。

http://jqueryui.com/demos/dialog/

【讨论】:

  • 问题是弹出窗口实际上不是弹出窗口,而是出现在调用控件下方,布局完全混乱。我们不能使用 jQuery,因为我们使用 Prototype 并且有很多现有代码,并且由于冲突我们不能。这是 IE9 和 ASP.NET AJAX 的一个已知问题 - 有一些解决方法 - 不幸的是,它们都不适合我。
  • asp.net/ajaxlibrary/AjaxControlToolkitSampleSite/modalpopup/…这是您使用的工具正确吗?演示示例在他们的 IE9 站点上为我运行。我想我从这里唯一的选择是设置一个测试项目并安装 Ajax.NET 工具包来查看您的问题。你还没有解决这个问题吗?
【解决方案2】:

面对同样的问题,当我在母版页头部部分添加以下元标记时,我的问题现在得到了解决:

<meta http-equiv="X-UA-Compatible" content="IE=7" />

【讨论】:

  • 是的 - 已知的修复,不幸的是它在同一时间制动了很多布局 css,所以要注意:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-03
  • 2011-10-13
  • 1970-01-01
  • 2012-01-28
相关资源
最近更新 更多