none
RequiredFieldValidatorについて RRS feed

  • 質問

  • いつもお世話になっております。

    WEBフォーム上にテキストボックスとボタンとRequiredFieldValidatorを
    配置して、テキストボックスの必須入力チェックを行っています。

    ポストバック時に、テキストボックスの内容を、同ページのラベルに
    表示しているのですが、一度テキストボックスの内容をラベルに表示した後に、
    テキストボックスを空にして、ボタンを押下すると、必須入力チェックでエラーになるのですが、
    この必須入力エラーになったと同時に、ラベルの内容をクリアすることは可能でしょうか。

    Page_Loadメソッドは、必須入力チェックエラー時には実行されず、
    ラベルをクリアすることができません。

    要は、RequiredFieldValidatorを利用して必須入力チェックを行って、
    このエラーチェックが行われると同時に、WEBフォーム上にある
    WEBコントロールのプロパティを変更することは可能なのでしょうか。

    どなたか方法をご存知の方がおられましたら、教えてください。
    よろしくお願いします。

    2006年7月7日 11:11

回答

  • > 一度テキストボックスの内容をラベルに表示した後に、テキストボックスを
    > 空にして、ボタンを押下すると、必須入力チェックでエラーになるのですが、
    > この必須入力エラーになったと同時に、ラベルの内容をクリアすることは可能でしょうか。

    これ、ボタンを押す場合だけじゃなくて、他のテキストボックスにカーソルが動いただけでも必須入力チェックはエラーになりますよね。
    これができるのは、クライアント側のスクリプトでチェックが行われているからです。
    このクライアント側のスクリプトは自動生成されるものなので、そこになんらかの手を加えるのは難しいんじゃないかと思います。

    あとはクライアント側のスクリプトを動かないようにして、必ずサーバにPostBackしたときにエラーチェックが行われるようにすれば、エラーになったときはラベルの内容をクリアすることができるかもしれません。
    ただし、この場合だと、一度サーバにリクエストなげないとエラーチェックは行われない、ということになってしまいますけどね。

    2006年7月7日 12:15

すべての返信

  • > 一度テキストボックスの内容をラベルに表示した後に、テキストボックスを
    > 空にして、ボタンを押下すると、必須入力チェックでエラーになるのですが、
    > この必須入力エラーになったと同時に、ラベルの内容をクリアすることは可能でしょうか。

    これ、ボタンを押す場合だけじゃなくて、他のテキストボックスにカーソルが動いただけでも必須入力チェックはエラーになりますよね。
    これができるのは、クライアント側のスクリプトでチェックが行われているからです。
    このクライアント側のスクリプトは自動生成されるものなので、そこになんらかの手を加えるのは難しいんじゃないかと思います。

    あとはクライアント側のスクリプトを動かないようにして、必ずサーバにPostBackしたときにエラーチェックが行われるようにすれば、エラーになったときはラベルの内容をクリアすることができるかもしれません。
    ただし、この場合だと、一度サーバにリクエストなげないとエラーチェックは行われない、ということになってしまいますけどね。

    2006年7月7日 12:15
  • ご返信ありがとうございます。

    ボタン押下時に何とかして、表示された文字列をクリアしたいので、

    クライアント側で自動生成されたスクリプトに、何らかの動作で、

    コントロールのプロパティを変更する(もしくはそう見える)方法を

    検討してみます。

    ありがとうございました。

    2006年7月11日 7:27