2012-07-18 170 views
0

我使用jQuery对象追加元素和修改XML文档的值,其我使用具有如<tgroup><table><row><tbody>等如下所示节点的XML字符串初始化。扭曲XML格式

var str = "<txml> <table><tsnipp><tbody> <row> ... </row> </tbody> </tsnipp> </table> </txml>" 

现在我正在使用$(str)创建一个jQuery对象。 XML文档中的<tsnipp>元素位于<table>元素下;然而,在使用Firebug检查jQuery对象时,我将它看作<table>元素的上方,因此<tsnipp><table>处于同一级别,而不是其子元素之一。我认为jQuery本身就是这样组织的,因为它认为<table>元素是一个HTML元素。

通过只改变<table><d_table>,jQuery做的是正确的事情。

我想使用jQuery来操作对象,因为它更容易作为DOM对象进行操作。但是,将其转换为字符串,然后转换为jQuery对象需要大量正则表达式来将某些字符串替换为其他字符。

回答

0

您可以使用jQuery.parseXML解析文档的XML而不是HTML:

var doc = $($.parseXML(str)); 
+1

是它的工作原理。如果有人正在寻找如何解析使用此代码:var SERL =新的XMLSerializer(DOC) var txt = serl.serializeToString(doc); – user593029 2012-07-18 20:48:23