刚刚接触Jquery,有个小问题想问下各位:
如:$.post("a.php", "{name:'abc'}", function(data) {
     ...
}, 'json');1、其中第四个参数,也就是手册上没有的那个参数,如果写成“json”,意思是不是ajax接收返回值的类型?
2、然后function是不是应当这样写:
function(data) {
    alert(data.info);    //加入传回来的数组中有“info”键名
}
3、在处理页面(即接收ajax传值的页面中),是不是只有数组可以转换成json???如用php中的json_encode($arr);
4、在什么情况下,$.post()认为ajax成功,而调用function呢?谢谢!

解决方案 »

  1.   

    jQuery.post(url, [data], [callback], [type])urlString发送请求地址。data (可选)Map待发送 Key/value 参数。callback (可选)Function发送成功时回调函数。type (可选)String返回内容格式,xml, html, script, json, text, _default。
      

  2.   

    1.第四个参数确实是返回值的类型,参考
    2.如果data的返回值是一个j对象,而且对象有info键值,那么可以这么取值
    3.这个不一定吧,像xml数据类型,类json格式的字符串数据类型都可以转换为json对象吧
    4.如果你要判断它成功时调用,可以这么写:$.ajax({
      type: 'POST',
      url: "a.php",
      data: "{name:'abc'}",
      success: function(data) {
      alert(data.info); //加入传回来的数组中有“info”键名
    },
      dataType: “json”
    });