2010-12-22 51 views
0

在我的aspx頁面中,我有下拉列表,初始頁面加載事件加載顯示給客戶端的值列表(下拉列表「A」)並在客戶端,根據客戶端選擇另一個下拉列表(下拉列表「B」)我寫了一個JavaScript更新下拉列表「A」與相應的值與Ajax行爲(沒有整頁回發)。asp.net下拉列表viewstate問題在客戶端Ajax更新後

但是,當我們發佈頁面到服務器,在服務器端頁面加載事件顯示初始發送下拉列表「A」的值列表,但不是由於ViewState正確更新而導致的Ajax調用加載的值到Ajax調用。我可以通過更新面板輕鬆解決這個問題,但是它將Ajax請求大小增加到了44KB,這比我寫的手工製作的Ajax腳本目前的要高得多(0.5KB)是否有修復此問題的特殊方法而不是使用更新面板?

回答

0

您可以編寫小j來將下拉選定值存儲在隱藏字段中。並使用通用HTML控件來減少視圖狀態大小。

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

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

這裏HiddenField的id應該是什麼? – tugberk 2011-07-24 07:35:58