AJAX.NET请求处理程序 - 设置隐藏字段

时间:2009-02-05 10:12:01

标签: asp.net ajax

我正在尝试在AJAX初始化请求处理程序中设置hiddenfield控件的值。但是,在服务器上,隐藏字段控件始终包含上一个回发的值。我假设在初始化请求处理程序中设置隐藏字段之前正在准备/发送viewstate。 有没有办法设置隐藏字段,以便传递新值或通过另一种机制将值传递给服务器。

这是我正在使用的代码:

var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_initializeRequest(MyPage_initializeRequestHandler);

function MyPage_initializeRequestHandler(sender, args)
{
    var hiddenField1= $get('hiddenField1');

    if (hiddenField1 != null)
    {
        hiddenField1.value = 'test';
    }
}

非常感谢。

1 个答案:

答案 0 :(得分:2)

您使用的是更新面板吗?

如果您是,那么您需要确保隐藏字段位于正在刷新的更新面板内,否则新值将不会发送到浏览器。

另外,如何创建隐藏字段,如果它是更新面板回发的一部分,则应使用ScriptManager.RegisterHiddenField。

HTH的