以前用JS操作XML都是用DOM的方式,现在有了这个插件,操作起来会更方便了直接采用对象。。。

来源:http://www.94this.com.cn/article/258.htm

这个插件应该是比较方便的一个插件了,它能把xml字符串或xml文件转化为json对象,比如把

<xml>
<message>Hello world</message>
</xml>

转化为
{
message: 'Hello world';
}

这样我们操作起来就很方便了,因为用javascript操作json比操作xml要方便好多。

基本的使用:
var xml = '<xml><message>Hello world</message></xml>';
var json = $.xml2json(xml);
alert(json.message);

当然它也能通过直接把xml文件转化为json:

$.get('data/hello.xml', function(xml){
var json = $.xml2json(xml);
alert(json.message);
});

好了,看看基本的演示吧!(膘叔:演示地址仍然是亮亮的网站)

这个插件还有一个扩展的用法:
基本的是把

<?xml version="1.0" encoding="utf-8"?>
<animals>
<dog color='Black'>
<name>Rufus</name>
<breed>labrador</breed>
</dog>
<dog breed='whippet'>
Adopted
<name>Marty</name>
</dog>
<cat color="White">
<name>Matilda</name>
</cat>
</animals>
转化为
{
dog:[
{ name:'Rufus', breed:'labrador', color:'Black' },
{ text:'Adopted', name:'Marty', breed:'whippet' }
],
cat:{ name:'Matilda', color:'White'}
}
扩展的作用是把每个节点转化为数组的形式,即
{
dog:[
{ name:['Rufus'], breed:['labrador'], color:'Black' },
{ text:'Adopted', name:['Marty'], breed:'whippet' }
],
cat:[
{ name:'Matilda', color:'White'}
]
}

这个使用也简单,就多了一个参数:

$.get('data/animals.xml', function(xml){
var animals = $.xml2json(xml, true);
alert(animals.dog[1].name[0].text +'/'+ animals.dog[1].text);
});


最后,看看所有用法的演示(此演示官方提供)吧!