0

我使用了一个asp:GridViewwithClientIDMode="Static"和 I D="GridView2",它显示了一些特定的结果,比如单击按钮时的帐户详细信息。

首先,我对网格进行数据绑定,除了回发延迟和整个页面重绘之外,一切都很好。

(GridView2.DataSource = datatable.DefaultView;
 GridView2.DataBind();)

现在我正在使用 Ajax 来更新这个网格(我在 Ajax 函数中创建网格的 html 并像这样在 Grid html 上覆盖它

$('#GridView2').html(html.join(''))

),它正在正确绘制,但现在我无法在服务器端访问它的行。

for (int rows = 0; rows < mayDataGrid.Rows.Count; rows++)//.Rows.Count is always 0 but in html it is there.
4

1 回答 1

1

当 gridview 呈现时,它还会在 ViewState 中呈现其 ControlState,当页面回发网格的当前状态(行更改,如添加/编辑/删除等)时,此 ControlState 而不是 html 标记(您正在更改)在服务器上检测到。

因此,对 html 的任何更改都不会在服务器端生效。

于 2012-04-25T11:10:44.400 回答