26-讨论
16.6.3 讨论
jQuery邮件列表上常见的一个问题是如何将XML字符串转换为jQuery可以操作的DOM表现形式。当用响应类型 xml
发起Ajax请求时,浏览器将自动把返回的XML文本解析为DOM对象。
那么,如果你有一个需要用jQuery处理的XML字符串时应该怎么做? xmlDOM
插件提供了XML字符串的原生跨浏览器解析,返回一个 jQuery
包装的DOM对象。可以在一步内转换和访问XML:
(function($) {
$(document).ready(function() {
var xml = '<myxml><title>Hello world!</title></myxml>';
var title = $.xmlDOM( xml ).find('myxml > title').text();
$('#title').html( title );
});
})(jQuery);
另一种常见的方法是将DOM对象作为jQuery(上下文)的第二个参数,如:
(function($) {
$(document).ready(function() {
var $xml = $.xmlDOM( '<myxml><title>Hello world!</title></myxml>' );
var title = $('myxml > title', $xml).text();
$('#title').html( title );
});
})(jQuery);
这样,就可以对传入的上下文对象运行jQuery选择;否则,jQuery对文档对象运行查询。
作者编写的xmlDOM插件可以从http://jquery-cookbook.com/go/plugin-xmldom下载。