> 웹 프론트엔드 > JS 튜토리얼 > jquery 구문 분석 JSON 데이터 샘플 code_jquery

jquery 구문 분석 JSON 데이터 샘플 code_jquery

WBOY
풀어 주다: 2016-05-16 16:55:21
원래의
1031명이 탐색했습니다.

여기에서 json.js의 코드를 찾을 수 있으며 나중에 formutil.js 및 MD5.js의 코드가 필요합니다

jquery를 사용하여 JSON 데이터를 구문 분석하고 jquery 비동기 요청의 전송 개체로 결과가 반환됩니다. jquery 요청이 json 객체인 경우 여기서 고려되는 것은 서버가 JSON 형식으로 반환하는 문자열의 형태이며, JSONObject 등 플러그인으로 캡슐화된 JSON 객체의 경우 이와 유사하므로 여기서는 설명하지 않습니다.
여기서 먼저 JSON 문자열 세트가 제공됩니다.
코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

var data="
{
root:
[
{name:'1',value:'0'} ,
{이름:'6101',값:'베이징시'},
{이름:'6102',값:'텐진시'},
{이름:'6103',값:' Shanghai City'},
{name:'6104',value:'Chongqing City'},
{name:'6105',value:'Weinan City'},
{name:'6106' ,값:'옌안시'},
{이름:'6107',값:'한중시'},
{이름:'6108',값:'위린시'},
{이름:'6109',값:'안강시'},
{이름:'6110',값:'상뤄시'}
]
}";

jquery를 사용하여 비동기적으로 얻은 데이터 json 객체와 문자열 유형을 기준으로 두 가지 방법으로 얻은 결과 처리 방법을 각각 소개합니다.
1. 서버에서 반환된 JSON 문자열의 경우 jquery 비동기 요청에 유형 설명이 없거나 문자열로 허용되는 경우 메서드가 너무 번거롭지 않아야 합니다. eval()에 문자열을 넣으면 한 번 실행됩니다. 이 방법은 일반적인 javascipt 방법으로 json 객체를 얻는데도 적합합니다. 다음은 예입니다:
코드 복사 코드는 다음과 같습니다.

var dataObj=eval("(" data ")");//json 객체로 변환
alert(dataObj.root.length);//개수를 출력합니다. 루트
$.each(dataObj.root,fucntion(idx,item){
if(idx==0){
return true;
}
//출력 각 루트 하위 개체의 이름 및 값
alert("name:" item.name ",value:" item.value)
})

참고: 일반 js의 경우 json 객체를 생성하려면 $만 있으면 됩니다. Each() 메서드를 for 문으로 바꾸고 나머지는 변경하지 않고 그대로 두세요.
2. 서버에서 반환된 JSON 문자열의 경우 jquery 비동기 요청이 유형(일반적으로 이 구성 속성)을 "json"으로 설정하거나 $.getJSON() 메서드를 사용하여 서버 반환을 얻는 경우 이때 얻은 결과는 이미 json 개체이므로 eval() 메서드가 필요하지 않으며 개체를 직접 호출하기만 하면 됩니다. 여기서는 데이터 처리 방법을 설명하기 위해 $.getJSON 메서드를 예로 사용합니다.
코드 복사 코드는 다음과 같습니다.

$.getJSON("http:// www.phpzixue.cn/",{param:"gaoyusi"} ,function(data){
//여기에 반환된 데이터는 이미 json 객체입니다
//다음 다른 작업은 첫 번째와 동일합니다 case
$.each(data.root,function(idx,item) {
if(idx==0){
return true;//countinue와 동일, break와 동일 false 반환
}
alert("name:" item.name ",value:" item.value);
})
})

여기서 특별히 주의해야 할 사항은 무엇인가요? 방법 1의 eval() 메서드가 문자열(아마도 js 스크립트)을 동적으로 실행한다는 것입니다. 예, 이로 인해 시스템 보안 문제가 쉽게 발생할 수 있습니다. 따라서 eval()을 우회하는 일부 타사 클라이언트 스크립트 라이브러리를 사용할 수 있습니다. 예를 들어 JavaScript의 JSON은 3k 이하의 스크립트 라이브러리를 제공합니다.
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿