2014-03-26 95 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標記以外的其他功能。 –