我正在使用Jquery mobile构建一个phonegap应用程序,我使用ajax调用与tomcat服务器进行通信。我所有的脚本都位于应用程序中。我的第一个ajax调用工作,我的第二个Ajax调用不适用于Windows Phone 8,它可以在Android和iOS中工作。第二个Ajax调用不起作用Phonegap Jquery移动Windows Phone 8
我正在使用单域,并且还使用了跨域标志,以防万一第二个Ajax调用仍然没有运气。我在每个JQM页面中都有ajax调用,只有在登录页面中的ajax调用工作,并且所有其他ajax调用都不起作用,虽然我得到(HTTP 200 OK)作为响应,但在Tomcat中看不到请求登录服务器(尽管我可以看到第一次登录ajax请求)。
我认为在初始ajax调用(登录)期间创建的jsession ID在导航到下一个JQM页面期间会以某种方式丢失。
这是Ajax调用我用我的应用程序,
request = $.ajax({
url: "http://X.X.X.X/Servlet/Login",
type: “post”,
data: serializedData
});
我已经在应用中的下列标志,虽然我没有使用跨域(所有呼叫都以相同的IP做)。
$(document).bind("mobileinit", function() {
$.support.cors=true;
$.mobile.allowCrossDomainPages = true;
$.mobile.pushStateEnabled = false;
$.mobile.touchOverflowEnabled = false;
$.mobile.defaultPageTransition = 'slide';
$.mobile.defaultDialogTransition = 'pop';
$.mobile.transitionFallbacks.slide = 'none';
$.mobile.transitionFallbacks.pop = 'none';
$.mobile.buttonMarkup.hoverDelay = 0;
$.mobile.phonegapNavigationEnabled = true;
});
我已经在我使用的表格中设置了data-ajax=“false”
。
此外,我必须删除event.preventDefault();
Windows Phone 8其他明智的提交按钮被点击页面刷新后没有采取任何行动。
我想再次说明,我的代码在Android和iOS中完美工作(只添加了跨域标志)。但在Windows Phone 8中,我无法对同一台服务器进行第二次Ajax调用。
我希望我可以用你的帮助解决这个问题,任何领导都会非常感激。谢谢。
感谢您的评论,但我的问题是cookie在Internet Explorer设置中被禁用。 – Tobio