禁用 Jquery Mobile Ajax 导航

Posted

技术标签:

【中文标题】禁用 Jquery Mobile Ajax 导航【英文标题】:Disable Jquery Mobile Ajax Navigation 【发布时间】:2013-09-10 07:39:22 【问题描述】:

尽管无休止地阅读 API 文档和互联网帖子,但我无法禁用 AJAX 导航。

当前脚本

<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.4.0-alpha.2/jquery.mobile-1.4.0-alpha.2.min.js"></script>
<script>
$(document).bind(“mobileinit”, function()  
    $.mobile.ajaxEnabled = false; 
);
</script>

我的问题

当我从根页面 (index.aspx) 登录时使用 ASP.NET 表单 我应该被重定向到我网站的其余部分所在的文件夹 (LOGIN),但该文件夹未传递到 URL。

我得到 /Page.aspx

而不是 /LOGIN/Page.aspx

问题

如何修复 ASP.NET 表单登录提交的导航行为

如何为 Jquery Mobile 1.4 全局禁用 AJAX 导航

【问题讨论】:

如果您完全按照上面代码中的操作进行操作,但在调用 jquery 移动脚本之前执行此操作,则它可以正常工作并完全禁用 ajax 导航。我自己用这个。在此处找到示例和说明:amitkumarsharma.com/jquery-mobile-and-disabling-ajax 【参考方案1】:

我找到了一个简单的解决方案如下:

只需添加到您的主表单:

data-ajax="false"

<form runat="server" data-ajax="false">

这将禁用所选表单上的 ajax 导航。

由于这是 ASP.NET,将其添加到站点主表单将禁用站点范围内的 AJAX 表单提交行为。

这样就不需要使用上面提到的脚本了。

【讨论】:

【参考方案2】:

我知道这是旧的,但刚刚处理过这个。如果要全局禁用 Ajax 导航,请添加以下脚本 AFTER Jquery,但 BEFORE Jquery mobile。顺序在这里非常重要。

代码如下所示:

<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script>
$(document).on("mobileinit", function () 
  $.extend($.mobile, 
    ajaxEnabled: false
  );
);
</script>
<script src="http://code.jquery.com/mobile/1.4.0-alpha.2/jquery.mobile-1.4.0-alpha.2.min.js"></script>

见http://demos.jquerymobile.com/1.0a3/#docs/api/globalconfig.html

【讨论】:

感谢山姆的替代解决方案

以上是关于禁用 Jquery Mobile Ajax 导航的主要内容,如果未能解决你的问题,请参考以下文章

JQuery Mobile 1.4 如何在移动设备上禁用悬停效果

使用jquery mobile时如何处理手机中的表单导航后退按钮

在页面之间导航后如何在jquery mobile中停止重复数据

jquery mobile+html5 写的页面 如何禁用手机后退按钮。或者说如何禁用页面后退。

Jquery Mobile 滑块不工作 JQM 1.3.2 和 Jquery 1.10.2

在 Mobile Safari 中禁用同源策略