在使用前,需要先导入jquery.js包,一般写在文档的末尾。
导入例子:<script src="js/jquery.js"></script>.
已学到的ajax属性有 type、url、data、async和访问成功的success function(msg)方法.
$.ajax({
type: 'GET', //访问模式
url: 'http://127.0.0.2/test.php',//地址
async: false,//是否异步访问 异步( true)
success: function (msg) { //访问成功后,服务器响应数据(msg)
alert(JSON.stringify(msg));
$('#s1').html(JSON.stringify(msg));
}
}
);
今天在使用ajax访问PHP服务器json数据的时候,发现了Access-Control-Allow-Origin null的报错信息。善用百度后,得知服务器响应头部没有编写,后添加:
header('content-type:application:json;charset=utf8');
header('Access-Control-Allow-Origin:*');
header('Access-Control-Allow-Methods:POST');
header('Access-Control-Allow-Headers:x-requested-with,content-type');
这样ajax可以访问服务器,但是又出现了一个问题,发现返回的数据在js中打印的是[object,object],
再次百度,发现我已经拿到了数据,但是数据在js上是以object的形式显示,使用JSON.stringify(msg)
后,得到JSON字符串。
PS:JSON.stringify() 方法是将一个JavaScript值(对象或者数组)转换为一个 JSON字符串
JSON.parse() 方法用于将一个 JSON 字符串转换为对象。