我有一個用戶控制,其爲更新面板的一部分。用戶控件是一個標題(標籤)和一個asp表格。 asp:Table只在頭文件中定義在ascx文件中。該表的內容通過讀取csv文件從後面的代碼動態更新。此設置位於每分鐘更新一次的「更新」面板中。每分鐘之後,csv文件都會更新,因此表格需要更新。傳遞表後面javascript功能
這裏是棘手的部分。在表更新之前,我需要保存舊錶的副本,然後更新新表。一旦新表更新並且頁面即將被加載,我需要在page_load處理程序中調用一個javascript函數並傳遞這兩個表。在javascript函數內部,我需要比較舊錶格和新表格單元格,並根據比較結果做一些工作。
這是我如何更新前從表中的數據複製到另一個表。
TableCell tableCell;
TableRow tableRow;
for (int i = 0; i < Table1.Rows.Count; i++)
{
tableRow = new TableRow();
for (int j = 0; j < Table1.Rows[i].Cells.Count; j++)
{
tableCell = new TableCell();
tableCell.Text = Table1.Rows[i].Cells[j].Text;
tableRow.Cells.Add(tableCell);
}
oldTable.Rows.Add(tableRow);
}
但由於某些原因,當我通過表格的javascript功能和使用在JavaScript中我只看到標題,而不是任何值舊錶的單元格。但是當我訪問自己後面的代碼中的單元格時,我可以看到這些值。
我的HTML是
<table id="ContentPlaceHolderBody_ContentPlaceHolderBody_TradxPriceTable_5_oldTable" ClientID="oldTable">
<tr>
<td colspan="3">6M EURIBOR</td>
<td colspan="3">6M EURIBOR</td>
</tr><tr>
<td>Instr</td>
<td>Bid</td>
<td>Ask</td>
<td>Instr</td>
<td>Bid</td>
<td></td>
</tr><tr>
<td></td>
<td></td>
<td></td>
<td colspan="3">BASIS 3s6s</td>
</tr><tr>
<td></td>
<td></td>
<td></td>
<td>Instr</td>
<td>Bid</td>
<td>Ask</td>
</tr><tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
我的JavaScript
function foo(table1,table2)
{
var oldTable = document.getElementById(table1);
var newTable = document.getElementById(table2);
alert(oldTable.rows[2].cells[1].innerHTML+" "+newTable.rows[2].cells[1].innerHTML);
}
你能發佈(的片段)生成的HTML和JavaScript請 –
是oldTable.Visible = 「假」?如果是這樣,客戶端不能通過JavaScript訪問,但可以在服務器端訪問。 –
@CMKanode:可見不是錯誤的。 – Sai