使用HTML <table> </table>填充行

时间:2014-10-30 18:44:17

标签: javascript html

我的屏幕上有一张空白表:

<table id="TransactionTable" class="table table-responsive table-striped">
    <thead>
        <tr>
            <th></th>
            <th>Date</th>
            <th>Account</th>
            <th>Third Party</th>
            <th class="text-right">Amount</th>
        </tr>
    </thead>
    <tbody></tbody>
</table>

在我的控制器中,我使用text:

为此表格构建了一些HTML行
foreach(var i in transactions) {
    tblCode += "<tr>";
    tblCode += string.Format(
        "<td><a href=\"@Url.Action(\"EditTransaction\", \"Transaction\" class=\"btn btn-sm btn-success\" title=\"View Transaction\">View</a></td>");
    tblCode += string.Format("<td class=\"small-bold-cell\">{0}</td>", i.Date.ToString("dd.MMM.yyyy"));
    tblCode += string.Format("<td class=\"small-cell\">{0}</td>", i.EntityEventTypeId == (int) Constants.EntityEventTypes.Payment ? i.DestinationEntityFull : i.SourceEntityFull);
    tblCode += string.Format("<td class=\"small-cell\">{0}</td>", i.EntityEventTypeId == (int) Constants.EntityEventTypes.Payment ? i.SourceEntityFull : i.DestinationEntityFull);
    tblCode += string.Format("<td class=\"small-bold-cell text-right\">{0}</td>", i.Amount.ToString("C2"));

    tblCode += "</tr>";

}

然后我将其传回JSON结果中的javascript,并使用Chrome,我可以在返回的对象中看到HTML代码。

然后我尝试将HTML代码添加到我的表中。

if (result.Success == 'true') {
    $.unblockUI();
    $('#TransactionTable').innerHTML = result.TableCode;
    $('#transactions').modal('show');

}
else {
    $.unblockUI();
    alert("error");
}

但它似乎根本没有添加代码。一旦显示,该表中没有任何内容。

我做错了什么?

1 个答案:

答案 0 :(得分:2)

jQuery对象没有innerHTML属性 - 您需要使用html方法,或引用jQ对象的0索引来获取本机DOM对象:

$('#TransactionTable')[0].innerHTML = result.TableCode;

或者

$('#TransactionTable').html(result.TableCode);