码迷,mamicode.com
首页 > 微信 > 详细

在微信中调用ajax出现的问题

时间:2015-07-10 00:19:53      阅读:334      评论:0      收藏:0      [点我收藏+]

标签:

背景:最近在开发微信,使用的是asp.net开发,Jquery版本是1.8.0。

   在微信中点击按钮触发事件,调用ajax与服务器端进行交互,回调函数走的是error。

 

分析原因:首先我想到的是返回的数据类型有问题,因为在jquery 版本在1.4以上对json的格式非常严格,需要符合{"target":true,"message":"成功"}这样的格式。用JSON.stringify()函数分析了response对象,结果符合,排除了原因。

既然ajax 走的是error,我开始分析error函数的参数,分别有XMLHttpRequest, textStatus, errorThrown。我发现XMLHttpRequest.status等于0,XMLHttpRequest.readyState等于0,说明窗体中有XMLHttpRequest对象却没有初始化,接下来开始研究怎么初始化XMLHttpRequest对象。

 

解决办法:

var xmlHttpRequest;

$(function(){

if(window.XMLHttpRequest){

xmlHttpRequest=new XMLHttpRequest();

}else{

xmlHttpRequest=new ActiveXObject("Microsoft.XMLHTTP");

}

xmlHttpRequest.open("GET","AjaxServlet",true);

});

 

这样就能解决以上描述的问题,注意PC端访问一般的Ajax不会出现问题,因为PC中浏览器都有内建的 XMLHttpRequest对象,而在微信中,出现此现象,可能需要手动去构建和初始化。

 

在微信中调用ajax出现的问题

标签:

原文地址:http://www.cnblogs.com/wheecas/p/4634486.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!