客户端Ajax更新后的asp.net下拉列表viewstate问题

时间:2010-12-22 13:47:44

标签: asp.net

在我的aspx页面中,我有一个下拉列表,初始页面加载事件加载了显示给客户端的值列表(下拉列表“A”)和客户端,具体取决于另一个下拉列表的客户端选择list(下拉列表“B”)我编写了一个javascript来更新下拉列表“A”,其中包含带有Ajax行为的相应值(没有完整的页面回发)。

但是当我们将页面发布到服务器时,在服务器端页面加载事件显示initialy发送的下拉列表“A”的值列表,但不是Ajax调用加载的值,因为ViewState没有正确更新Ajax调用。我可以使用更新面板轻松解决这个问题,但是它将Ajax请求大小增加到44KB,远远高于目前我手写的Ajax脚本(0.5KB)是否有特殊方法来修复此而不是使用更新面板? / p>

1 个答案:

答案 0 :(得分:0)

您可以编写小j来存储隐藏字段中的下拉列表选定值。并使用通用HTML控件来减少视图状态。

$("select#a").change(function(){
 $("input[type='hidden']").val($(this).children(":selected").val()); 
});

 <select id="a" runat...><option ...></select>
 <asp:HiddenField ... />