AJAX实例及要点

ajax实例:

var resultData = null;
var URL = "../rest/nxBusiness/getConfig?key=weather" //根据具体情况修改url地址
$.ajax({
        type: 'POST',//不区分大小写及是否为单引号或双引号
        dataType: 'JSON',//不区分大小写及是否为单引号或双引号
        url: URL,
        async: true,
        cache: false,
        data: {
        },
        success: function (result) {
                //alert(result);//JSON对象
                console.log(result);//JSON对象
                //resultData = JSON.stringify(result);//转换为JSON字符串
    //resultData = eval("(" + result.data + ")");//转换为JSON对象
               //resultData = JSON.parse(result);//由JSON字符串转换为JSON对象 错误因为其参数须为字符串,result.data就为字符串了
                //alert(resultData);
    //alert(result.data);
                //alert(result.message);
    //console.log(result.data);
   
    resultData = JSON.parse(result.data);//转换为JSON对象
    alert(resultData.city[0].cityname);//此为例子形式
    console.log(resultData);

        },
        error: function (XMLHttpRequest, textStatus, errorThrown) {
            strobj(textStatus);
            strobj(errorThrown);
            strobj(XMLHttpRequest);
            resultData = null;
        }
    });

注意:

1、async //是否支持异步刷新,默认是true

2、data //需要提交的数据

3、dataType //服务器返回数据的类型,例如xml,String,Json,text等

4、success : function(result) {//返回数据根据结果进行相应的处理 
      if ( result.success ){
                    alert("成功"); 
                    alert(result.data);
                    alert(result.message);  }

5、json对象:{键值对}       json数组:[{},{},{}]  "":双引号内饰属性或值          json字符串 

6、①JSON.stringify()方法将JavaScript值转换为JSON字符串
     ②jQuery.parseJSON()函数用于将格式完好的JSON字符串转为与之对应的JavaScript对象,所谓"格式完好",就是要求指定的字符串必须符合     严格的JSON格式,例如:属性名称必须加双引号、字符串值也必须用双引号;由JSON对象转换为JSON字符串
     ③JSON.parse()方法解析一个JSON字符串,参数text要被解析成JavaSctipt值的字符串;由JSON字符串转换为JSON对象
    ④JSON.parse与eval和能将一个字符串解析成一个JSON对象,但还是有挺大区别,eval是强烈不建议用来解析JSON字符串,但是凡事无绝对,   如果数据来源于你信任的并且格式也不大规范,那用它也不是不可以

7、将dataType改为text,则返回的结果为json字符串

8、在浏览器中的console窗口查看ajax返回的数据为什么,再根据数据做进一步处理,看是json对象还是json字符串或是嵌套的json对象,那须取出其data(为字符串)再转对象进行处理

9、在html中取其结果中的数据,其形式为:$('#city').text(resultData.city[0].cityname);就是对标签的id为city的塞值,其值取的是json对象中的数据

10、若dataType为jsonp能解决跨域,但无法解析xml


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值