本文主要是介绍jquery中ajax如何返回值到上层函数的方法以及对于js处理json对象方法的记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
①在我们做前端js处理的时候我们经常会将一些公用的js方法封装起来,方便别的地方调用,但是我们要做的是需要将请求返回的值传递给调用者,这里我记录了在js中采用ajax方法获取后台数据并返回给调用者的方法,我们平时使用ajax的方法基本为如:
<span style="font-family:FangSong_GB2312;font-size:18px;">function AutoGetOpenid(){var personJson;$.ajax({url : "***.action",type : 'post',dataType : 'json',contentType : "application/x-www-form-urlencoded; charset=utf-8",data : {'code' : location.href.split('=')[1].split('&')[0]},success : function(data) {//返回获取到用户的信息,昵称、城市、openid、unionid、性别、头像地址等、、personJson = jQuery.parseJSON(data);},error : function() {}});return personJson;
}</span>
但是返回获取到的personJson却是没有我们想要的值,其实追究其原因是因为ajax中存在同步执行和异步执行的两种方式,在不做任何抉择的时候ajax采用的是异步执行的方式,所以我们想将结果返回的时候我们需要将执行方式修改为同步执行即可:
<span style="font-family:FangSong_GB2312;font-size:18px;">function AutoGetOpenid(){var personJson;$.ajax({url : "***.action",type : 'post',dataType : 'json',contentType : "application/x-www-form-urlencoded; charset=utf-8",<span style="color:#FF0000;">async:false,</span>data : {'code' : location.href.split('=')[1].split('&')[0]},success : function(data) {//返回获取到用户的信息,昵称、城市、openid、unionid、性别、头像地址等、、},error : function() {}});return personJson;
}</span>
看上面代码的红色部分,只需要加上这一行代码就可以解决问题了;
②在①中我们获取到了返回值data,这是一个jsonobject的json对象,我们如何获取其中的属性对应的值呢?
personJson = jQuery.parseJSON(data);
alert(personJson.openid);
首先将数据对象话,然后通过object.key就可以获取到对象的属性值了 ,欢迎访问个人博客(http://cuiyongzhi.com)!
这篇关于jquery中ajax如何返回值到上层函数的方法以及对于js处理json对象方法的记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!