JQuery - jquery .append()生成“无法读取属性'nodeName'的null”

时间:2017-05-25 16:32:45

标签: javascript jquery html

我正在尝试制作列表。我有一个变量,其中包含所有必需的名为myListingsArray的列表。我想循环遍历数组,一次输出5个或更少的列表。每个列表都需要拥有自己的属性。这是我到目前为止所做的:

HTML:

<script type="text/template" id="listingsTemplate">
<div class-"listingsDiv">
    <h1 class="listingsTitle">My listings</h1>
    <table id="listingsTable">
        <tr>
            <th>Address</th>
            <th>MLS</th>
            <th>Broker</th>
            <th>Price</th>
        </tr>
    </table>
</div>
</script>

JS:

$(document).ready(function(){
$("#listingsLink").click(function(){
    var personalTotal = myListingsArray.length;
    $(".content").html("");
    var template = $("#listingsTemplate").html();
    $(".content").html(template);
    for(var i = 0; i < personalTotal; i++){
        appendListing(i, "#listingsTable");
    }
});
});

function appendListing(i, location){
/*$(location).append( "
    <tr>
        <td id=\"address\">" + myListingsArray[i].address + "</td>
        <td id=\"mls\">" + myListingsArray[i].mls + "</td>
        <td id=\"broker\">" + myListingsArray[i].broker + "</td>
        <td id=\"price\">" + myListingsArray[i].price + "</td>
    </tr>
");*/ //EDIT: EASIER EXAMPLE
  $(location).append(i);
}

当我运行上面的代码时,它返回一个错误,说“无法读取属性”nodeName“of null”。在调用函数之前,“#listingsTable”显然存在,所以我不明白它为什么会抛出错误。

请帮忙 谢谢

1 个答案:

答案 0 :(得分:0)

好吧,我休息一下,回来,再次运行我的代码,它突然起作用了。我以前刷新了一千次而且它没有,但由于某种原因它现在确实如此。对不起打扰,大家过得愉快!