• ベストアンサー

コンボボックス続き

あるコンボボックスとデータベース接続して、 データベースある列の中身コンボボックスに表示されたんですが、 ページ表示される瞬間はもうコンボボックスにデータが入っています。 ページ表示されて、最初はコンボボックスになにも表示されていない状態したいです。 今の表示方法は dataMemberとdataTextFelidの設定して ddlBrand.DataBind()しています。 説明が下手かもしれないですが、詳しい方がいらしゃったら教えてください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.2

そうですよ VBで記述します Page_LoadイベントでDoropdownListに対してバインデイングとかしてますよね その中に if IsPostback = False then   dim ss as string   ss = "<script type='text/javascript'>" & vbNewLine   ss += " document.getElementById('DropDownList1').selectedIndex = -1;" & vbNewLine   ss += "</script>" & vbNewLine   if Me.IsStartupScriptRegistered("startup") = false then     RegisterStartupScript("startup", ss )   end if End if といった記述をします これにより ページがロードされた場合にPostBack以外でまだスクリプトが登録されていなければ登録する といった動作になります ブラウザ側で ページの末尾のほうに上記のスクリプトが追加されます

sinomori
質問者

お礼

ありがとうございます。 勉強になりました。

その他の回答 (1)

  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

クライアントスクリプトを書いて selectedIndexを-1に設定すると初期状態は選択されていないようになります Page_Loadイベント中のIsPostBackがFalseの場合の最後のほうに dim ss as string ss = "<script type='text/javascript'>" & vbNewLine ss += " document.getElementById('DropDownList1').selectedIndex = -1;" & vbNewLine ss += "</script>" & vbNewLine if Me.IsStartupScriptRegistered("startup") = false then   RegisterStartupScript("startup", ss ) end if といった具合です

sinomori
質問者

補足

返事遅れてすみません。 ちょっと理解できませんでした。 selectedIndexを-1はどこで設定しますか。 ss += "</script>" & vbNewLineなどはVBコードに書くんですよね? もうすこし詳しく説明していただけませんか。 よろしくお願いします。