none
WebサーバーコントロールのButtonコントロールの使用可不可 RRS feed

  • 質問

  • ASP.NETで画面にテーブルを配置し、そのテーブルの別々のセルにWebサーバーコントロールのButtonコントロールとWebサーバーコントロールのListBoxコントロールを配置しています。

    ButtonコントロールのEnabledをFalseに設定してあるのですが、ListBoxのアイテムを選択すると、何故かButtonコントロールが使用可能になってしまいます。

    使用可能になってしまった状態で、IEからソースを見ると。Buttonのdisabledは"disabled"に設定されていました。

    使用可能になってしまう原因がわかる方がいらっしゃたら、教えて頂けませんか?

    2008年2月7日 11:05

すべての返信

  • disabledなのに使用可能なのは不思議ですね。IEのバージョンはいくつでしょうか?

    また、支障無い範囲でそのIEのソースを提示できますでしょうか?

    2008年2月7日 16:24
    モデレータ
  • Mr.Tです、こんにちは。

    >ButtonコントロールのEnabledをFalseに設定してあるのですが、ListBoxのアイテムを選択すると、何故かButtonコントロールが使用可能になってしまいます。

    ButtonコントロールのEnabledプロパティを変更している箇所はないのでしょうか?
    デザイナの初期値で与えているだけですか?

    もしくは、

    クライアントスクリプトでdisabledを変更しているところはないのですか?



    2008年2月7日 23:58
  • IEのバージョンは6(SP2)です。

    ソースはどの箇所が必要ですか?

    問題のButtonコントロールの箇所は以下です。

         <td >

             <input type="button" name="button1" value="1" id="button1" disabled="disabled" />
              <br /><br /><br />
             <input type="button" name="button2" value="2" id="button2" disabled="disabled" />
         </td>

     

    クライアントスクリプトでenabledを切り替えている箇所はあります。

    確認しましたが、その箇所はリストボックス選択時には実行されていません。

    2008年2月8日 0:02
  •  pict12345 さんからの引用

    ソースはどの箇所が必要ですか?

    問題のButtonコントロールの箇所は以下です。

         <td >

             <input type="button" name="button1" value="1" id="button1" disabled="disabled" />
              <br /><br /><br />
             <input type="button" name="button2" value="2" id="button2" disabled="disabled" />
         </td>

     

    ソースはできれば全体が見たいのですが、無理であれば、そのソースをローカルに.htmlで保存し、クライアントスクリプトなど怪しいところを削除しながらテストされると、原因がわかるのではないかと思います。

    2008年2月8日 1:08
    モデレータ
  • >クライアントスクリプトでenabledを切り替えている箇所はあります。
    >確認しましたが、その箇所はリストボックス選択時には実行されていません。

    私なら、まっさきにそこを疑います。

    例えば、そのListBoxは、AutoPostBack=Trueにしてません?

    それによってクライアントスクリプトが動くこともないんですか?



    2008年2月8日 3:16
  •  

    ListBoxはAutoPostBack=Falseになっています。

    また、ソースをデスクトップに保存して、IEで開いてみると、Buttonコントロールは使用不可になっていました。

    伝え忘れていたのですが、ListboxとButtonコントロールを配置したテーブルはAJAXのUPDATEPANELにのせています。

    UPDATEPANELが何かいたずらしているのでしょうか?

    2008年2月8日 4:17