0

asp.net lisbox コントロールがあり、このコードを使用してクライアント側の JavaScript からデータを追加しています。

function selectCompany() {
   var str = document.getElementById('<%= txtFollowing.ClientID %>').value;
   var lbRef = document.getElementById('<%= lbCompanies.ClientID %>');
   var option = document.createElement("option");
   option.text = str;
   option.value = str;
   lbRef.options.add(option);
}

アイテムは問題なく追加されますが、コード ビハインドでは、リスト ボックスにあるアイテムの値を取得したい場合、常に null になります。これを修正するにはどうすればよいですか?

4

1 に答える 1

0

コントロールに項目を動的に追加したため、ビューステート ツリーの一部ではありません。Request.Form コレクションを使用してアイテムにアクセスする必要があります

Request.Form("Your_Listbox_ID")

「Your_Listbox_ID」がわからない場合は、ブレークポイントを設定し、Request.Form でクイックウォッチを実行して、そのキー名をざっと見てみましょう。

または、非表示フィールドをページに追加し、選択した値 (またはすべての値) を非表示フィールドに書き込み、分離コードから非表示フィールドを読み取ることを検討することもできます。

于 2012-05-20T21:20:25.527 に答える