2014-03-26 96 views
0

我需要用xml节点替换具有字段名称的节点。jQuery XML解析并替换标签

我试着用replaceWith没有正确解析。

至于建议here我试图创建一个解决办法来替代XML标签

$.fn.replaceWithXML = function replaceWithXML(ele) { 
     var xml = this.html(); 
     return $('<dummy />').append($(ele).append(xml)).html(); 
    } 

这不是所有的XML标记正常工作。

xml = '<field><col>Col1</col></field>' 
xml = $.parseXML(xml); 

用 “塔” 的产率意外输出 ''

无论这个作品

var xml_node = '<column></column>'; 
$(root).append(xml_node,{html: $(xml).find('field').html()}); 

这也不工作更换 “场”

$(root).append($(xml_node).append($(xml).find('field').html())); 
+0

类型错误!我有字段标签。我错误地输入了“Filed” –

回答

0

有一个在一个错字您的xml尝试(提交)

xml = '<field><col>Col1</col></filed>' 

应该是(场)

xml = '<field><col>Col1</col></field>' 

现在你编辑这个到你的问题,使用find工作定位的元素。现在的一个问题是,你是一个jQuery对象上使用.innerHTML,什么时候应该使用.html()

jsFiddle Demo

var xml = '<field><col>Col1</col></field>'; 
xml = $.parseXML(xml); 
console.log(xml); 
alert($(xml).find("col").html()); 
+0

我想在获取内容后替换标记 –

+0

还有一些jquery函数不支持除使用本机HTML标记以外的其他功能。 –