如果調用JSON沒有生效,可以繼續調用getElementsByTagName在地址部分查找第一個地址元素。這就取得了文檔的第一個DOM子節點,就是一個文本節點,並取得節點的值,這就是你想要的街道地址,首先,來比較一下JSON版本和XML語法。
- {
- "fullname": "Sean Kelly",
- "org": "SK Consulting",
- "emailaddrs": [
- {"type": "work", "value": "kelly@seankelly.biz"},
- {"type": "home", "pref": 1, "value": "kelly@seankelly.tv"}
- ],
- "telephones": [
- {"type": "work", "pref": 1, "value": "+1 214 555 1212"},
- {"type": "fax", "value": "+1 214 555 1213"},
- {"type": "mobile", "value": "+1 214 555 1214"}
- ],
- "addresses": [
- {"type": "work", "format": "us",
- "value": "1234 Main StnSpringfIEld, TX 78080-1216"},
- {"type": "home", "format": "us",
- "value": "5678 Main StnSpringfIEld, TX 78080-1316"}
- ],
- "urls": [
- {"type": "work", "value": "http://seankelly.biz/"},
- {"type": "home", "value": "http://seankelly.tv/"}
- ]
- }
如你所看到的,JSON有結構化的嵌套數據元素,這一點和XML相似。JSON版本也是基於文本的,XML也是如此。兩者都使用Unicode。 JSON和XML都很容易閱讀。主觀上,JSON更清晰,冗余更少。JSON WEB站點嚴格地描述了JSON語法,目前就是這樣的。
它確實是一個簡單的小語言! XML確實適合標記文檔,但是JSON是數據交互的理想格式。每個JSON文檔描述了一個這樣一個對象,該對象包含有:嵌套對象、數組、字符串、數字、布爾值或空值。
- function myHandler() {
- if (req.readyState == 4 /*complete*/) {
- var addrFIEld = document.getElementById('addr');
- var card = eval('(' + req.responseText + ')');
- addrFIEld.value = card.addresses[0].value;
- }
- }