ajax - ASP4.5.1、Bootstrap、带 AJAX 控制工具包在 iOS 浏览器上引发 ScriptManager 错误

标签 ajax twitter-bootstrap

我在 www.cougarsbaseballsoftball.com 上有一个新升级的应用程序,它在 PC 上的 IE 和 Chrome 上运行良好,但在 iOS8 设备上的 Safari 和 Chrome 上运行失败。页面加载时,它无法生成消息:“ID 为 upnlMessage 的控件(更新面板)需要页面上的 ScriptManager。 ScriptManager 必须出现在任何需要它的控件之前。”

脚本管理器是通过 AJAX 控制工具包提供的版本,位于母版页中: 所有脚本引用都在这里......

    </ajaxToolkit:ToolkitScriptManager>

我已经尝试了相关帖子中的以下解决方案,但尚未找到可行的解决方案:

1.创建App_Browser文件来处理来自iPad的请求:iPad 6_0_1 ScriptManager.SupportsPartialRendering ASP.Net 。这并没有解决 iOS 互操作问题,但对 PC 上的浏览​​器没有造成影响。此更改已回滚。 2. 创建 App_Browser 文件来处理 Safari 浏览器的请求(大概是跨平台的):iOS 8 / Safari 8 not working with ASP.NET AJAX-Extensions 。这并没有解决 iOS 互操作问题。它导致 PC 浏览器上的应用程序失败。此更改已回滚。 3. 将 EnablePartialRendering 和 LoadScritsBeforeUI 属性添加到 ToolkitScriptManager 声明中(参见上文)- The ScriptManager must appear before any controls that need it - 克里斯·宾特(Chris Bint)的观点接近底部。此更改保留在应用程序中。

该网站正在 GoDaddy Ultimate 网站上运行,信任级别 = 完全。尽管该站点在框架 4.5.1 上运行,但问题可以在 4.5.0 上重现。由于 Ajax Control Toolkit 的相互依赖性问题,我没有尝试恢复到 4.0。

最佳答案

检查您的解决方案中是否有 Site.Mobile.masterViewSwitcher.ascx

我遇到了这个问题,发现当尝试在移动设备上查看应用程序时,它实际上切换到没有脚本管理器的移动主机。我正在使用响应式网页设计,并决定排除移动主机和 ViewSwitcher,这解决了我的问题。

希望这对您也有用。

新年快乐。

关于ajax - ASP4.5.1、Bootstrap、带 AJAX 控制工具包在 iOS 浏览器上引发 ScriptManager 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27698880/

相关文章:

javascript - 当粘性导航锁定到位时,Bootstrap 4 显示搜索框

html - 如何在 Bootstrap 中处理网格系统内的数据

javascript - 使用 data-slide-to 和 javascript 将类添加到轮播导航

javascript - 通过ajax加载html页面时,会加载script标签吗?

javascript - GMail 喜欢我网站的重试行为

JavaScript 变量未正确解释

javascript - Angularjs Twitter Bootstrap 。错误 : element. focus() 不是函数

javascript - 更改放置在模态页脚中的按钮的任务

php - 如何在html设计中显示20列

javascript - PHP文件返回整个文件