- ASP.NET 4
- jQuery 1.7.1
- 浏览器:IE9
你好
我在 UpdatePanel 中使用带有 gridview 控件的 jquery,因此,每次单击 gridview 的一行时,Jquery 都会编辑 HiddenField 控件的值,因此当我需要“选定索引”时,我只使用 HiddenField 的值。在 Chrome 和 Firefox 中一切正常,但在 IE9 中却不行。单击一行并将其索引分配给 HiddenField 后,当我单击按钮并触发服务器端事件时,当我检索 HiddenField 的值时,我得到它的默认值(在标记中定义的那个),而不是换了一个。而且,奇怪的是,如果我使用 and alert(HiddenField.value),它会显示行索引!所以,这个问题只发生在服务器端功能上,即使在回发之后隐藏字段值被保留,但始终作为服务器端的默认值......
这是我的 Jquery 代码:
$('[id$=divtxtIdPresentacion]').click(function () {
var tex = $('#<%=HFSeleccionIndexRow.ClientID%>').attr("Value");
var index = $(this).attr("commandargument");
if (tex != index) {
$('#<%=HFSeleccionIndexRow.ClientID%>').attr("Value", index);
}
});
以及部分按钮事件:
protected void gridPresentacionAgregar_SelectedIndexChanged(object sender, EventArgs e)
{
int index = int.Parse(HFSeleccionIndexRow.Value);
...
}
还有 HiddenField(以防万一):
<asp:HiddenField runat="server" ID="HFSeleccionIndexRow" value="0" />