document.createElement(“tr”)未显示在html中

document.createElement("tr") not showing up in html

本文关键字:显示 html createElement tr document      更新时间:2023-09-26

我有一个非常烦人的问题。我得到了这组运行的代码,应该将XML中的一些信息放入几个表槽中。

var xmlDoc;
$(document).ready(function() {
    //Load XML
    importXML();
    ///////////////////////////////////////////////////////////////////////////////////////
});
function importXML() {
    $.ajax({
        type: "GET",
        url: "adList.xml",
        dataType: "xml",
        success: assignXML
    });
}
function assignXML(myXML) {
    xmlDoc = myXML;
    pushContent();
}
function pushContent() {
    var len = xmlDoc.getElementsByTagName('advertisement').length;
    for (i = 0; i < len; i++) {
        var trElement = document.createElement('tr');
        console.log($(xmlDoc).find('advertisement').eq(i).find('image').text());
        var image = $(xmlDoc).find('advertisement').eq(i).find('image').text();
        var imageTD = document.createElement('td');
        var imageIn = document.createElement('input');
        imageIn.setAttribute('type', 'text');
        imageIn.setAttribute('name', 'imageArr[]');
        imageIn.setAttribute('size', '15');
        imageIn.setAttribute('value', image);
        imageTD.appendChild(imageIn);
        trElement.appendChild(imageTD);
        console.log(trElement);
    }

所有的信息都在那里。我可以用firebug在javascript代码中查找tr,它工作正常。它没有抛出任何错误。它只是没有显示在页面或html中。我做错了什么?

更改此。。。

var trElement = document.createElement('tr');

对此。。。

var table = document.getElementById('my_table'),
    trElement = table.insertRow(table.rows.length);

演示:http://jsfiddle.net/7gDhq/1/