今天在网上学习Ajax,在解析数据的时候,有一种重要的知识点,JSON。原来听老师说过,json是一种万能的数据转化格式。的确自己感觉它的使用非常方便。相比其他的数据格式,如XML,json有许多优点,长度小,读取速度快,解析方便...
JSON是javascript object notation,js对象表示法。一种轻量级的使用方便数据交换格式。
语法:名称/值对
如:"name":"zhang san"
json的值可以是:
整数或浮点数的数字;双引号内的字符串;true或false的逻辑值;在方括号中的数组;在花括号中的对象;null
举例,一个JSON格式:
{ "staff": [ {"name":"allen1","age":"70"}, {"name":"allen2","age":"30"}, {"name":"allen3","age":"50"} ] }
推荐一个:json在线格式化和校验的工具:JSONLint
json解析方法:在此我借助谷歌浏览器的调试台。正常解析json数据,如图。
var jsondata='{"staff": [{"name":"allen1","age":"70"},{"name":"allen2","age":"30"}]}'; // var jsonobj=eval('('+jsondata+')'); //此方法不安全,更不推荐使用 var jsonobj=JSON.parse(jsondata); alert(jsonobj.staff[0].name);
使用原生的JS解析显示数据显得比较麻烦,Jquery在异步提交方面已经封装的很好,Jquery大大简化了我们的操作。
使用jQuery实现Ajax,$.ajax的一般格式:
$.ajax({
type: 'POST',
url: url ,
data: data ,
success: success ,
dataType: dataType
});
$.ajax的参数描述如图:
使用jQquery方便地完成Ajax的项目实例代码片段:
$(document).ready(function(){ $("#search").click(function(){ $.ajax({ type: "GET", url: "http://127.0.0.1/ajaxdemo/serverjson2.php?number=" + $("#keyword").val(), dataType: "json", success: function(data) { if (data.success) { $("#searchResult").html(data.msg); } else { $("#searchResult").html("出现错误:" + data.msg); } }, error: function(jqXHR){ alert("发生错误:" + jqXHR.status); }, }); }); });
- 我的微信
- 这是我的微信扫一扫
- 我的微信公众号
- 我的微信公众号扫一扫