0

ユーザーがボタンをクリックしたときに、この JavaScript コードを使用して、lbResources という名前のリストボックスで選択した項目を削除しています。

var listResources = document.getElementById('lbResources');
listResources.options.remove(listResources.selectedIndex);

これにより、リストボックスからアイテムが削除されますが、サーバーへのポストバック時に、アイテムはコード ビハインドにまだ存在します。クライアント側で削除された項目を反映するコード ビハインド リスト ボックス オブジェクトを取得する方法はありますか? ASP .NET コントロールの代わりに、標準の HTML リストボックスを使用するべきでしょうか?

隠しフィールドを使用して、ポストバックに渡す必要があるデータを保持することができますが、可能であればそれを避けたいと思います。

4

1 に答える 1

1

ASP.NET コントロールは、ポストバックまたはページの読み込みを行うたびに同じ方法でレンダリングを続けます。クライアント側で何をしたかは気にしません。コントロールの値のみに関心があります。また、viewstate に対して自身を検証します。あなたは単にそれを行うことはできません.

非表示フィールドを使用して削除するアイテムを渡し、ページが完全に読み込まれないように updatepanel を使用することをお勧めします。

または、標準の HTML 入力を使用することもできますが、サーバー側で選択された値以外を知る必要があるかどうかによって異なります。

于 2013-05-21T21:08:49.753 に答える