要如下步骤: 1、创建 xml 解析器。
IE 浏览器使用 ActiveXObjec。
其他浏览器使用document.implementation.createDocument方法。
2、关闭异步加载。
3、加载 XML 文档。
4、读取 XML 文档的信息。
本文参考了 http://www.w3cschool.cn 上大量的标准和教程,大家可以在这个网站得到更多关于 XML 和其他 Web 技术的标准和教程。
分类: ArcGIS 客户端技术ArcGIS 客户端开发学习笔记(三)——JSON 基础 JSON(JavaScript Object Notation,Javascript 对象标记)是一种轻量级的数据交换格式。
它基于 JavaScript Programming Language Standard ECMA-262 3rd Edition -December 1999的一个子集。
JSON 采用完全独立于语言的文本格式,但是也使用了类似于 C 语言家族的习惯(包括 C C C Java JavaScript Perl Python 等)。
这些特性使 JSON 成为理想的数据交换语言。
一、JSON 的结构 主要有两种结构,“名称/值”对的集合(Acollection of name/value pairs)和值的有序列表(An ordered list of values)。
1、名称/值”对的集合(A collection ofname/value pairs) 这个其实很好理解,因为其他的很多语言都有相应的概念,比如大家比较熟悉的字典结构(dictionary)、哈希表(hash)等等。
通常形式如下: : : … : 注意:永远都不要以逗号作为最后一个“属性—值”对的结尾。
一个例子:1 var student2 3 name:张三4 age:205 school:西北农林科技大学6 subject:GIS7 82、值的有序列表(Anordered list of values) 在大部分的语言中,它被理解为数组(Array)。
格式如下: … 一个例子:1 var numberonetwothreefourfivesix二、JSON 的形式 JSON 对象是一个无序的“‘名称/值’对”的集合。
一个对象以“”(开始,以“”结束。
每个“名称”后跟一个“:”(冒号);“‘名称/值’对”之间使用“”(逗号)分隔。
可以理解为它就是一个“名称/值”对的集合。
其中的值也可以是值的有序列表。
下面就是一个 JSON 例子: 代码1 2 identifier: wishId3 label: description4 items: 5 wishId: 4455 description: Don Pepin Garcia Delicias size:7-506 origin: Nicaragua wrapper: Corojo shape: Straight7 8 wishId: 4456 description: 601 Habano Robusto size: 5-509 origin: Nicaragua wrapper: Natural shape: Straight10 11 wishId: 4457 description: Black Pearl Rojo Robusto size: 43/4-5212 origin: Nicaragua wrapper: Natural shape: Straight13 14 wishId: 4458 description: Padron Churchill size: 6 7/8-4615 origin: Nicaragua wrapper: Natural shape: Straight16 17 18 19 可以看到上面的例子中,第一层是三个“名称/值”对:identifier: wishId、label:description和”items”:Array。
”items”的值是一个值的有序列表。
这个有序列表的每个项都是“名称/值”对。
JSON 有如下的限制: 1、包括冒号左边的名称在内的所有字符串都必须用引号括起来。
而散列字面量并没有这个限制。
2、嵌套的散列和数组可以出现在冒号的右侧。
但是,可以出现在右侧的基本数据类型,只有单引号和双引号括住的字符串、数字、true 和 false、null。
表达式和变量名则是不允许出现在冒号右侧的。
三、在 Javascript 中使用 JSON 在 Javascript 使用 JSON 非常方便,来看看下面一个例子。
我有一个订单,这个订单信息存储在一个 JSON 对象 myOrder 中。
我要在 HTML 页面中把这个订单信息打印出来。
代码var myOrder//定义了一个订单 JSON 对象 orderID:001//订单号 date:2010-8-25//订单日期 items://订单中的货物序列 name:面包price:2.5 name:矿泉水price:1 name:饼干price:2 html 页面的 body 如下:123 订货单信息如下:45 最主要的 getMyOrder_JSON函数如下: 代码1 function getMyOrder_JSON//读取 JSON 的信息2 3 var msg4 msgmsg订单号:myOrder.orderID//获取订单号5 ,订单日期:myOrder.date//获取订单日期6 ,订购货物如下:7 var itemsmyOrder.items//获取订单中的项8 forvar i0i