我在循環瀏覽Javascript中的一個表格並從一行的第一個單元格獲取文本時遇到問題。我想獲取這個單元格的文本,以便我可以將其與其他內容進行比較,如果文本匹配,則刪除該行。當我嘗試獲取文本時,所有實際出現的是「[object text]」。任何人都可以告訴我如何真正獲得文本。我的代碼如下循環遍歷表中的所有行,我認爲它正在獲取正確的單元格。Javascript表格
function addRow(id, sender, message){
var theTable = document.getElementById('messageTable');
var lastRow = theTable.rows.length;
var newRow = theTable.insertRow(lastRow);
newRow.id = id;
var cellLeft = newRow.insertCell(0);
var textNode = document.createTextNode(id);
cellLeft.appendChild(textNode);
var secondCell = newRow.insertCell(1);
var textNode2 = document.createTextNode(sender);
secondCell.appendChild(textNode2);
var messageCell = newRow.insertCell(2);
var messageNode = document.createTextNode(message);
messageCell.appendChild(messageNode);
var deleteCell = newRow.insertCell(3);
var deleteNode = document.createElement('button');
deleteNode.value = 'Delete';
deleteNode.innerHTML = 'Delete';
deleteNode.onclick = function(){
var myTable = document.getElementById('messageTable');
var rows = myTable.childNodes;
var i=1;
for (i=1;i<rows.length;i++) {
var myCell = rows[i].getElementsByTagName("td")[0];
var myCellText = myCell.childNodes[0];
alert(myCellText);
if (myCellText == id){
alert('match');
}
alert('done');
}
};
deleteCell.appendChild(deleteNode);
}
你應該考慮使用jQuery。整個解決方案將減少到大約3-5行乾淨的代碼。 – Sampson 2009-07-31 11:47:13
是的,約200行框架代碼。 – kemiller2002 2009-07-31 11:48:59