4.5.1 DOM与Ajax
在Ajax技术中,DOM起着重要作用。在Ajax应用程序中,Javascript并未与HTML/ XHTML文档直接打交道。Javascript对HTML/XHTML文档信息的读取、设置都必须经过DOM来实现。换句话说,离开了DOM,Javascript将无法读取HTML/XHTML文档的信息,也无法设置HTML/XHTML文档的信息。
DOM是表示HTM./XHTML文档和访问、操作构成文档的各个元素的应用程序接口。DOM为Javascript操作HTML/XHTML文档内容提供了一系列可用的应用程序接口,通过这些接口,Javascript可以以树状结构的方式遍历整个HTML/XHTML文档,获取文档节点对象,读取、修改文档节点的属性,并将这些节点的属性发送给服务器,或者用服务器返回的数据更新节点属性值,从而更新文档内容。
例如,通过DOM定义的Document对象,Javascript可以读取HTML页面的表单内容,解析其中表单控件的值,取得用户的输入数据。服务器处理用户行为,将响应数据返回给XMLHttpRequest对象,最终经由Javascript操纵DOM更新HTML文档内容。
总之,在Ajax应用程序中,DOM是HTML/XHTML文档的惟一代理。
另外,假如服务器以XML文档的方式将响应数据返回给客户端,也必须经由DOM来解析。Javascript本身并未具备处理XML文档的能力。DOM所定义的解析XML文档的各个对象、方法,可以向Javascript提供解析XML文档的接口,使Javascript能够遍历XML文档的每一个节点,读取XML文档的节点值等信息,从而为更新页面内容提供数据保证。







