溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Ajax如何使用JSON數(shù)據(jù)格式

發(fā)布時(shí)間:2021-09-15 18:40:56 來(lái)源:億速云 閱讀:107 作者:小新 欄目:web開(kāi)發(fā)

這篇文章給大家分享的是有關(guān)Ajax如何使用JSON數(shù)據(jù)格式的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

1:

JSON(JavaScriptObject Notation)一種簡(jiǎn)單的數(shù)據(jù)格式,比xml更輕巧。JSON是JavaScript原生格式,這意味著在JavaScript中處理JSON數(shù)據(jù)不需要任何特殊的API或工具包。
JSON的規(guī)則很簡(jiǎn)單:對(duì)象是一個(gè)無(wú)序的“‘名稱(chēng)/值'對(duì)”集合。一個(gè)對(duì)象以“{”(左括號(hào))開(kāi)始,“}”(右括號(hào))結(jié)束。每個(gè)“名稱(chēng)”后跟一個(gè)“:”(冒號(hào));“‘名稱(chēng)/值'對(duì)”之間使用“,”(逗號(hào))分隔。
JSON用冒號(hào)(而不是等號(hào))來(lái)賦值。每一條賦值語(yǔ)句用逗號(hào)分開(kāi)。整個(gè)對(duì)象用大括號(hào)封裝起來(lái)??捎么罄ㄌ?hào)分級(jí)嵌套數(shù)據(jù)。
對(duì)象描述中存儲(chǔ)的數(shù)據(jù)可以是字符串,數(shù)字或者布爾值。對(duì)象描述也可存儲(chǔ)函數(shù),那就是對(duì)象的方法。

<span >{"person": { 
"name":"Andy Budd", 
"website":"http://andybudd.com/", 
"email":"andy@clearleft.com" 
} 
}</span>

JSON 只是一種文本字符串。它被存儲(chǔ)在responseText 屬性中
為了讀取存儲(chǔ)在 responseText 屬性中的JSON 數(shù)據(jù),需要根據(jù)JavaScript 的eval語(yǔ)句。函數(shù) eval會(huì)把一個(gè)字符串當(dāng)作它的參數(shù)。然后這個(gè)字符串會(huì)被當(dāng)作 JavaScript 代碼來(lái)執(zhí)行。因?yàn)?JSON 的字符串就是由 JavaScript 代碼構(gòu)成的,所以它本身是可執(zhí)行的

2:案例

<%@ page language="java" pageEncoding="UTF-8"%> 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
<title>People at Clearleft</title> 
<style type="text/css"> 
@import url("clearleft.css"); 
</style> 
<script type="text/javascript"> 
window.onload=function(){ 
var aNodes=document.getElementsByTagName("a"); 

for(var i = 0;i < aNodes.length; i++){ 

aNodes[i].onclick=function(){ 
var request=new XMLHttpRequest(); 
var url=this.href; 
var method="GET"; 
request.open(method,url); 
request.send(null); 
request.onreadystatechange=function(){ 
if(request.readyState==4){ 
if(request.status==200||request==304){ 
var result=request.responseText; //json被存儲(chǔ)在responseText屬性中 
var object=eval("("+result+")"); //讀取responseText中的json數(shù)據(jù) 
var name= object.person.name; //讀取json對(duì)象中存儲(chǔ)的數(shù)據(jù) 
var website= object.person.website; 
var email= object.person.email; 
var aNode=document.createElement("a"); 
aNode.appendChild(document.createTextNode(name+":"+"email"+":"+website)); 
aNode.href="mailTo"+"email"+",website"; 
var h3Node=document.createElement("h3"); 
h3Node.appendChild(aNode); 
var dtails=document.getElementById("details"); 
details.innerHTML=""; //防止重復(fù)的添加字符串 
dtails.appendChild(h3Node); 
} 
} 
} 
return false; 
} 
} 
}; 
</script> 
</head> 
<body> 
<h2> 
People 
</h2> 
<ul> 
<li> 
<a href="files/andy.js">Andy</a> 
</li> 
<li> 
<a href="files/richard.js">Richard</a> 
</li> 
<li> 
<a href="files/jeremy.js">Jeremy</a> 
</li> 
</ul> 
<div id="details"></div> 
</body> 
</html>

感謝各位的閱讀!關(guān)于“Ajax如何使用JSON數(shù)據(jù)格式”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI