2009-04-23 12 views
0

更新されたパネルに2つのリストボックスと保存ボタンがあります。ページがロードされると、リストボックスの1つに、選択されたドロップダウンアイテムに関連するデータがロードされます。ユーザーがドロップダウンで別のアイテムを選択すると、私はポストバックを行い、選択したアイテムに関連するデータでリストボックスをリロードします。ユーザーがページ上の「保存」をクリックすると、listbox.Itemsは、最初のページの読み込み時に読み込まれた元のアイテムとページに表示されているアイテムです。Ajaxのアップデートパネルの問題

これを修正する方法はありますか?

答えて

0

この問題を解決するには、クライアント側からviewstateを更新する必要がありました。

関数UpdateStateforList(リスト){

var i; 
var state = "1"; 
for(i = 0; i < list.options.length; i++){ 
    state += "|" + list.options[i].text + "|" + list.options[i].value; 
} 
eval("document.forms[0]." + list.id + "_State.value = state"); 

}

0

すべてのポストバックでデータをバインドしないようにしてください。これを確認するにはPage.IsPostbackを使用してください。

+0

私はすでにそれをやっている:以下は一回更新パネルのポストバックが完了している私はと呼ばれるjavascript関数です。もう一つのこと。リストボックスをJavaScript経由で他のリストボックスからロードすると、すべて正常に動作します。 –

+0

また、更新チャンネルを取り出すとすべてうまく動作します。 –