|
{
var br;
var row = document.createElement("tr");
var cell = document.createElement("td");
var cellTr = document.createElement("tr");
var cellTd = document.createElement("td");
cellTd.appendChild(document.createTextNode("用戶名:"+userName));
cellTr.appendChild(cellTd);
cell.appendChild(cellTr);
cellTd = document.createElement("td");
cellTd.appendChild(document.createTextNode("創建時間:+userCreateDate"));
cellTr.appendChild(cellTd);
cell.appendChild(cellTr);
cellTd = document.createElement("td");
cellTd.appendChild(document.createTextNode("發表文章:"+articleCount));
cellTr.appendChild(cellTd);
cell.appendChild(cellTr);
row.appendChild(cell);
cell = document.createElement("td");
cellTr = document.createElement("tr");
cellTd = document.createElement("td");
cellTd.appendChild(document.createTextNode("發表時間:"+creationDate+" "+"修改時間:"+modifiedDate));
cellTr.appendChild(cellTd);
cell.appendChild(cellTr);
cellTr = document.createElement("tr");
cellTd = document.createElement("td");
cellTd.appendChild(document.createTextNode(subject));
br = document.createElement("br");
cellTd.appendChild(br);
cellTd.appendChild(document.createTextNode(body));
cellTr.appendChild(cellTd);
cell.appendChild(cellTr);
row.appendChild(cell);
document.getElementById("messageList").appendChild(row);
}
以上代碼在ie中出現"意外的調用了方法或屬性訪問",錯誤指向最后一句.望各大俠指點迷津
評價:
你這段代碼感覺不優雅~沒有重用性~性能底~、
建議:
1>采用函數封裝實現重用。
2>對于table的內部嵌套采用如下格式:
<table>
<tbody>
<tr>
<td></td>
...
</tr>
...
</tbody>
<tbody>
</tbody>
...
</table>
對table動態生成,采用從內到外添加的方案。另盡可能少使用document.createTextNode,性能低。
3>如果你的table不是在頁面加載時需要執行,建議在<script中添加defer即
<script defer>
</script>
4>另外盡量采取對傳值對象的封裝,調用一次即可。即,可以將你的表格數據封裝成[]或{}(當然內部有模型實現)的策略。
5>如果你js好的話,可以采用prototype做得更完美!
以上意見僅供參考。
JavaScript技術:tbody元素支持嵌套的注意方法,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。