new ListItem("", "-1",true))
jQueryのようにfromコードビハインドを追加せずに-1インデックスを選択する方法はありますか?
次に例を示します。
new ListItem("", "-1",true))
jQueryのようにfromコードビハインドを追加せずに-1インデックスを選択する方法はありますか?
次に例を示します。
あなたはこれを行うことができます
文字列 selectStr = "SELECT"; 文字列 allStr = "ALL"
ListItem allLI = 新しい ListItem(allStr,allStr);
ListItem selectLI = 新しい ListItem(selectStr,selectStr);
DropDownList.Items.Add(selectLI); DropDownList.Items.Add(allLI);
//クエリが返すリストで DropDownList を埋めるコード
DropDownList.SelectedValue = selectStr;
こんな感じですか?
DropDownList1.SelectedIndex = -1;
これは通常、コード ビハインドから実行する方法です。
ETA: おっしゃっていることがわかりました。残念ながら、サーバー側からそれを行う方法がわかりません。サーバー側でできることは、レンダリングを制御することだけです。私が知る限り、このコードをレンダリングしたとしても:
<select id="testSelect" selectedIndex="-1">
...一番上のオプションが選択されているように見えます。
レンダリング後にjavascriptで明示的に-1に設定するだけで、何も選択されていないように見えます。HTML で宣言的に行うことができないかのように見えます。
ロード時にこのように表示されるように HTML でタグを記述する方法を見つけることができれば、コード ビハインドでレンダリングを微調整することができます (使用.AddAttribute()
または同様のものを使用) が、宣言で実行できない場合は、' JavaScriptが必要です。
(もちろん、すべてのドロップダウンを selectedIndex = -1 に変更する jQuery スニペットを作成することもできますが、それについて考えたことがあるでしょう!)
Page_Loadイベントにバインドしている場合は、ポストバックを行います(AutoPostBack='True')
。インデックスが変更されるたびに再バインドされます。
if (!IsPostBack)
{
BindDropDownList1();
}
(また)
上記の解決策が機能しない場合は、次のように空のアイテムを追加してみてください。
this.myDropDownList.Items.Add(new ListItem("Select...", ""));