我有一个ASP移动网站,我正在使用jQuery mobile。我在联系页面上使用recaptcha时遇到问题。当验证码错误时,它会消失。当我不使用jQuery mobile时它工作正常。有任何帮助吗?我也在使用jQuery validate插件。
谢谢
答案 0 :(得分:0)
我遇到了类似的问题 - 我的团队使用jQuery mobile的ajax页面链接导航到我们使用reCaptcha的登录页面。 ajax调用将导致页面加载,此时reCaptcha表单将呈现并隐藏所有其他内容。刷新页面会正确加载所有内容。
我对此的修复是删除链接到页面的ajax。来自jQUery移动手册:
没有指向其他域或具有的Ajax链接的链接 rel =“external”,data-ajax =“false”或目标属性不会 加载了Ajax。相反,这些链接将导致整页刷新 没有动画过渡。两个属性(rel =“外部”和 data-ajax =“false”)具有相同的效果,但语义不同 含义:当连接到另一个站点时,应使用rel =“external” domain,而data-ajax =“false”对于简单地选择页面很有用 在您的域中通过Ajax加载。因为安全 限制,框架总是选择外部域的链接 Ajax的行为。
在1.1版本中,我们添加了对a使用data-ajax =“false”的支持 父容器,允许您排除大量链接 来自Ajax导航系统。这避免了添加它的需要 属性到容器中的每个链接。
注意:构建一个jQuery Mobile应用程序所在的Ajax 导航系统全局禁用或经常禁用 个别链接,我们建议禁用$ .mobile.pushStateEnabled 全局配置选项,以避免不一致的导航行为 在某些浏览器中。
这解决了我们的加载问题,但现在我们遇到了另一个问题:当从注册页面导航回我们的登录页面,然后返回到注册页面时,jQuery mobile会导致浏览器重新加载目标网页。仍在努力解决这个问题。
修改强> 彻底检查了我的代码后,我注意到我调用的页面有html,head和body标签,两次拉jquery.mobile-1.0.min.js和jquery-1.6.4.min.js,并包含在模板中。
删除额外的html,head和body标签(以及js包含)后,页面显示正确。