0
在ASP.NET 2.0 Web應用程序中,有一個網格視圖,其中的行以第一列動態創建爲複選框。用戶要麼檢查GridView行中的單個複選框,要麼只檢查全部檢查以檢查GridView中的所有行。GridView標題複選框更改在IE中不起作用9
我添加了一個帶有標題模板(標題行)和項目模板(數據行)的模板字段。 當用戶點擊GridView_RowDataBound事件中的標題行復選框時,我添加了javascript方法來檢查所有數據行復選框。
JavaScript函數通過「的getElementById(‘GridViewName’)獲得GridView和檢查是否行的第一個單元格類型的複選框,然後選中該複選框。
//get gridview from the document
var grid = document.getElementById(gridId);
//total rows in the gridview
var rowsCount = grid.rows.length;
//cond: sent by header checkbox
if (bIsHeader == true) {
//loop starts from 1. rows[0] points to the header.
for (i = 1; i < rowsCount; i++) {
//get the reference of first column
cell = grid.rows[i].cells[0];
//cond: confirm type of the cell child
if (cell.childNodes[0].type == "checkbox") {
//assign header checkbox state to every row
cell.childNodes[0].checked = chkBox;
}
}
}
它在IE 8和更低版本工作正常。但是,在IE 9,當這個JavaScript函數來獲取行的childNodes來檢查它是否是複選框或沒有。它不會在步驟。
我想解決什麼?
在我的代碼,row.childN odes在IE 9中不起作用。在IE 9及更高版本中,此屬性的替代選項是什麼?
你確定這個問題是關於** row.childNodes **嗎?我準備JsFiddle [示例](http://jsfiddle.net/ENZhp/)和這個例子在IE9中工作,它使用** row.childNodes **屬性 – vadim
是的,但我現在想通了。我用row.children替換了row.childNodes,它也在IE9和IE8上工作。 –