0

私のasp.net Webページにドロップダウンリストがあります。サーバー側のコントロールです。私は ajax 呼び出しを行っており、ajax 呼び出し内で新しい項目を ddl に追加し、それを選択済みとして設定しています。ページにうまく表示されています。しかし、ポストバックすると、選択したアイテムがドロップダウンリストに古い選択アイテムを表示します。

// ddlCaseNumber is the id of the dropdownlist and its clientid property is set
// to static.
// Removes the selected attribute of selected selected item .
$('#ddlCaseNumber option:selected').removeAttr("selected");

// Add the new item to dropdownlist.
$('#ddlCaseNumber').append('<option selected="selected" value=' + crmid + '>' 
                           + crmid + '</option>');

// Code behind code to get the new value.
// This line is giving the old value instead of giving new value.
string strNewValue = ddlCaseNumber.SelectedItem.Value;

新しいアイテムをコード ビハインドに追加する方法を教えてください。

前もって感謝します。

4

1 に答える 1

2

クライアントに動的に追加されたアイテムは、ポストバック時にサーバーに自動的に複製されません。

<input type="hidden">1 つのオプションは、新しいアイテムが追加されたことを (またはのような形で) 何らかの方法で保存し、ポストバック<asp:HiddenField>のページの一部として手動でアイテムを追加することInitです。

別のオプションは、AJAX を呼び出してサーバー上の情報をSession変数のようなものに保存し、ポストバックに手動で追加することです。

于 2012-07-20T08:17:52.250 に答える