none
DetailsView内のフィールドの内容をクリア RRS feed

  • 質問

  • 連日お世話になっております。

    DetailsViewに入力した内容を
    GridViewに一覧表示させる、
    入力フォーム+一覧表を作成しています。

    日付:___
    氏名:___
    住所:___

    入力フォームにキャンセルボタン
    を作成したいです。

    DetailsView内のフィールドの内容をクリアするコードは
    どのように記述すればいいのでしょうか?

    ご教授お願いいたします!
    2011年11月25日 2:46

回答

  • やりたいことは

    http://masaboo.cside.com/new_html1/ht_63.htm

    こういうことでしょうか?

    別の話であれば、どういう状況でなにをさせたいのかをもう少し詳しく記述してください。


    あおい情報システム株式会社 小野修司(どっとねっとふぁん)
    • 回答の候補に設定 山本春海 2011年12月1日 9:21
    • 回答としてマーク 山本春海 2011年12月5日 6:40
    2011年11月25日 3:26
  • CheckBoxList が html コードにレンダリングされた時に <input type="checkbox" ... に
    checked="checked" が設定されてなければ、<input type="reset" ... をクリックすれば
    チェックは外れるはずです。

    INSERT 操作のようですので、初期画面では全項目が未選択(<input type="checkbox" ...
    に checked="checked" が設定されてない)ですよね? であれば、初期画面は問題ないは
    ずです。

    チェックを入れてポストバックする(質問者さんの例では INSERT 操作をする)と、再描
    画された時はポストバック前に選択した項目にチェックがついている(html コードの
    <input type="checkbox" ... に checked="checked" が設定されている)と思います。そ
    の状態では <input type="reset" ... ではチェックは外せません。

    それが問題ということであれば、ポストバックした時に CheckBoxList.ClearSelection
    メソッドで全選択を解除してはいかがですか。

     

    • 回答の候補に設定 山本春海 2011年12月1日 9:22
    • 回答としてマーク 山本春海 2011年12月5日 6:40
    2011年11月26日 6:07

すべての返信

  • やりたいことは

    http://masaboo.cside.com/new_html1/ht_63.htm

    こういうことでしょうか?

    別の話であれば、どういう状況でなにをさせたいのかをもう少し詳しく記述してください。


    あおい情報システム株式会社 小野修司(どっとねっとふぁん)
    • 回答の候補に設定 山本春海 2011年12月1日 9:21
    • 回答としてマーク 山本春海 2011年12月5日 6:40
    2011年11月25日 3:26
  • ご回答ありがとうございます!
    まさにこれです!

    さっそくボタンを以下のように作成してみたところ
    きちんと動作しました!

    <INPUT type="reset" ID="Button1" value="リセット" >

    ついでにこのボタンをクリックしたとき
    別の場所に作成している
    【CheckBoxList1】という名前のチェックボックスリストの
    チェックをすべてはずしたいと思い
    XXX.aspx.vbに
    以下のようにコードを作成してみましたがエラーになってしまいます。


    Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click

    CheckBoxList1.ClearSelection()

    End Sub


    エラー内容は以下のとおりです。
    BC30506: HANDLES 句には、それを含む型または基本型の 1 つで定義された WithEvents 変数が必要です。


    だったらエラーの出たところを削除してしまえと思い
    以下のように修正すると
    エラーは出なくなりましたが
    やはりチェックボックスリストのチェックは消えません。

    【修正前】
    Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click

    【修正後】
    Protected Sub Button1_Click()


    どのように修正したらいいのでしょうか?
    引き続きお願いいたします!


    • 編集済み nonamasu 2011年11月25日 5:07
    2011年11月25日 5:02
  • リセットボタンはHTMLで定義されているものでクライアント内でうごきます。

    このタイミングでサーバー側にリクエストを上げて処理させるのは、なんというかもったいない?のでクライアント側のスクリプトで処理してしまうほうがよいでしょう。
    となると、ここで必要なのはJavaScriptの知識でサーバー上のASP.NETでのプログラムではない部分になります。

    > どのように修正したらいいのでしょうか?

    修正というか、考え方をまったく変えてください、という話ですね。

    Webアプリで必須の知識として、サーバー側のプログラム、クライアント(ブラウザ)側のスクリプト、どちらをどのタイミングで利用すべきかという話がありますので、そのあたりをよく考えてみてください。

     


    あおい情報システム株式会社 小野修司(どっとねっとふぁん)
    2011年11月25日 5:33
  • ご回答ありがとうございます!

    javascriptを使用したいと思うのですが
    <INPUT type=・・・
    という形で作成したチェックボックスのチェックを外すコードは
    検索すればたくさん出てくるのですが
    <asp:CheckBoxList・・・
    で作成したチェックボックスリストのチェックを外すコードが
    探し出せません。

    参考になるページ等ご存知でしたら
    教えていただけないでしょうか?

    お願いいたします!
    2011年11月25日 6:59
  • > <asp:CheckBoxList・・・
    > で作成したチェックボックスリストのチェックを外すコードが探し出せません。

    まずこのチェックボックスがどのようなHTMLになっているか確認してください。
    チェックボックスのチェックをはずす、というコードも検索すればたくさんでてくると思います。


    あおい情報システム株式会社 小野修司(どっとねっとふぁん)
    2011年11月25日 8:41
  • CheckBoxList が html コードにレンダリングされた時に <input type="checkbox" ... に
    checked="checked" が設定されてなければ、<input type="reset" ... をクリックすれば
    チェックは外れるはずです。

    INSERT 操作のようですので、初期画面では全項目が未選択(<input type="checkbox" ...
    に checked="checked" が設定されてない)ですよね? であれば、初期画面は問題ないは
    ずです。

    チェックを入れてポストバックする(質問者さんの例では INSERT 操作をする)と、再描
    画された時はポストバック前に選択した項目にチェックがついている(html コードの
    <input type="checkbox" ... に checked="checked" が設定されている)と思います。そ
    の状態では <input type="reset" ... ではチェックは外せません。

    それが問題ということであれば、ポストバックした時に CheckBoxList.ClearSelection
    メソッドで全選択を解除してはいかがですか。

     

    • 回答の候補に設定 山本春海 2011年12月1日 9:22
    • 回答としてマーク 山本春海 2011年12月5日 6:40
    2011年11月26日 6:07
  • こんにちは、nonamasu さん。

    MSDN フォーラムのご利用ありがとうございます。オペレーターの山本です。

    みなさんから参考になる情報をいただいているようでしたので、他の方にも情報共有するため、勝手ながら私のほうで回答としてマークさせていただきました。
    アドバイスくださったみなさん、情報ありがとうございます。

    いただいた情報の中で、解決に役立った投稿や、参考になる情報など有効な情報には回答としてマークすることをお願いしています。
    今後、同じ問題でこのスレッドを参照される方にも、有効な情報を活用いただけるかと思いますので、ご協力よろしくお願いいたしますね。
                                                                 
    日本マイクロソフト株式会社 フォーラム オペレーター 山本 春海

    2011年12月5日 6:40
  • SurferOnWww 様

    小野@どっとねっとふぁん 様

     

    ご回答いただいていたのに返信せず申し訳ありませんでした。
    いただいたアドバイスをもとに修正を試みたのですが
    なかなかうまくゆかずそのまま年末を迎えてしまいました・・・。

    まだ思うような答えが出せていないので
    再度質問させていただきたいと思っています。

    よろしくお願いいたします!

    2012年1月17日 2:46