模板文件:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="//cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
<script>
function ajaxPost(){
//serialize() 方法通过序列化表单值,创建 URL 编码文本字符串,这个是jquery提供的方法
var formData = $("#myform").serialize();
$.ajax({
type:"post",
url:"{:url('Index/index/test')}",
data:formData,//这里data传递过去的是序列化以后的字符串
success:function(data){
$("#content").append(data);//获取成功以后输出返回值
}
});
}
</script>
</head>
<body>
<form id="myform"><!--这里给表单起个id用于获取表单并序列化-->
<input type="text" name="mess" />
<input type="text" name="id" />
<button onclick="ajaxPost()">---------</button>
</form>
<div id="content"> </div>
</body>
</html>serialize()为jquery序列化方法
public function create() {
$data['msg'] = '我是龙哥';
$data['tel'] = '17630065407';
// json 对象格式 返回数据
// return json($data);
// xml 格式 返回数据
// return xml($data,$code=200);
// json 对象格式 返回数据
return ['data'=>$data,'code'=>200,'message'=>'操作完成'];
}<script>
$(function () {
$.ajax({
type: 'get',
url: '/add', //
dataType: 'xml',
// xml 格式 //
dataType: 'json',
// json 格式 //
'default_return_type':'json', // 默认返回数据
success: function (data) {
alert(data); // json 对象
alert(data.data.msg); // 获取json 对象中的某个值
alert(JSON.stringify(data)); // 将json对象 转成json字符串
console.log(data);
},
error: function () {
alert('AJAX请求失败!');
}
});
});
</script>ajax 返回数据,alert后显示object类型,如何处理
做ajax调用webapi接口的时候,用的是fidder调试的。
能看到返回的数据是xml,类似于json格式,用alert(data),始终都是object类型的。
但是在读取值的时候,始终不知道该如何取值,试了N种方式取值还是取不到。
最后用了json对象转json字符串:alert(JSON.stringify(data));直接可以看到json字符串了,就一下明白该如何取值了。
如果是object对象的话,应该就可以直接用data.属性,获取值。
参考:https://blog.csdn.net/JXL9910/article/details/80596984