Home >Web Front-end >JS Tutorial >jquery parsing JSON data sample code_jquery

jquery parsing JSON data sample code_jquery

WBOY
WBOYOriginal
2016-05-16 16:55:211025browse

Here you can find the code of json.js, and later you need the code of formutil.js and MD5.js

Use jquery to parse JSON data, as the transmission object of jquery asynchronous request, the result returned after jquery request is json object, what is considered here is the form of string returned by the server in JSON form. For JSON objects encapsulated by plug-ins such as JSONObject, it is similar to this, and will not be explained here.
The JSON string set is first given here. The string set is as follows:
The code is as follows:

Copy code Code As follows:

var data="
{
root:
[
{name:'1',value:'0'},
{name :'6101',value:'Beijing City'},
{name:'6102',value:'Tianjin City'},
{name:'6103',value:'Shanghai City'},
{name:'6104',value:'Chongqing City'},
{name:'6105',value:'Weinan City'},
{name:'6106',value:'Yan'an City '},
{name:'6107',value:'Hanzhong City'},
{name:'6108',value:'Yulin City'},
{name:'6109',value :'Ankang City'},
{name:'6110',value:'Shangluo City'}
]
}";

The data obtained asynchronously with jquery Based on the type - json object and string, the result processing methods obtained by the two methods are introduced respectively.
1. For the JSON string returned by the server, if the jquery asynchronous request does not have a type description, or is accepted as a string, then it needs to be objectified. The method is not too troublesome, that is, put the string in eval () is executed once. This method is also suitable for obtaining json objects in the ordinary javascipt method. The following is an example:
Copy code The code is as follows:

var dataObj=eval("(" data ")");//Convert to json object
alert(dataObj.root.length);//Output the number of child objects of root
$. each(dataObj.root,fucntion(idx,item){
if(idx==0){
return true;
}
//Output the name and value of each root sub-object
alert("name:" item.name ",value:" item.value);
})

Note: For general js to generate json objects, only $. Just replace the each() method with a for statement, and leave everything else unchanged.
2. For the JSON string returned by the server, if the jquery asynchronous request sets the type (usually this configuration attribute) to "json", or uses the $.getJSON() method to obtain the server return, then there is no need to eval ( ) method, because the result obtained at this time is already a json object, you only need to call the object directly. Here, the $.getJSON method is used as an example to illustrate the data processing method:
Copy code The code is as follows:

$.getJSON("http://www.phpzixue.cn/",{param:"gaoyusi"} ,function(data){
//The data returned here is already a json object
//The following other operations are the same as the first case
$.each(data.root,function(idx,item) {
if(idx==0){
return true;//Same as countinue, return false the same as break
}
alert("name:" item.name ",value:" item. value);
});
});

What needs special attention here is that the eval() method in method 1 dynamically executes the string (possibly a js script) Yes, this can easily cause system security problems. Therefore, you can use some third-party client script libraries that circumvent eval(). For example, JSON in JavaScript provides a script library of no more than 3k.
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn