2

我有一个带有 XML 表的 XML 代码

<displayTable>
<tr>
<td> items </td>
<..>
</displayTable>

它的结构与 HTML 中的表格完全相同,但元素的名称不同。然后我用 jQuery 解析 XML,并得到一个 DOM 对象。但是现在当我试图获取表格的 html 元素时,我没有得到 HTML 表格(没有错误,我得到标签内的项目),.text()并且.html()......有人知道为什么吗?

编辑:很抱歉造成混乱。所以它类似于这个js。我想要来自 XML 的 HTML 代码。所以只是 A... 在 &&& 行它会产生“Uncaught TypeError: Cannot call method 'replace' of undefined”错误 var str = "A";

$('#code-analysis').html(str);
console.log(str);

// parse string of XML code
var xmlString = str;
var xml = $.parseXML( xmlString );
$xml = $( xml );


// print to table in console
var displayTable = $xml.find( 'displayTable' ).children;
console.log ( displayTable );


// print table.text() to console, 
// but not in the HTML format 
// just the text within the element
var displayTableText = displayTable.text();
console.log ( displayTableText );              // A


// print table.html() to console
var displayTableHTML = displayTable.html();  // &&&
console.log ( displayTableHTML );               
4

1 回答 1

2

你必须使用.children(),而不是.children。它是 jQuery 中的函数调用,而不是属性。此外,您可以将孩子传递给.html()而无需将它们转换为字符串(我在尝试这样做时遇到错误)。

这样,只需将表格行添加到<table>元素:http: //jsfiddle.net/cRRAM/3/

于 2012-05-19T15:44:17.857 回答