ASP.NETページのテキストボックスに次のHTMLがあるとします。
<div class="myClass">
<asp:TextBox ID="txtMyTextBox" runat="server"></asp:TextBox>
</div>
このように、このページに必須のフィールドバリデーターを追加するのは簡単です。
<asp:RequiredFieldValidator ID="valMyTextBox" runat="server" ControlToValidate="txtMyTextBox" ErrorMessage="My Text Box is required."></asp:RequiredFieldValidator>
ただし、このテキストボックスが検証に失敗した場合は、HTMLを少し変更する必要があります。CSSクラスをDIVに追加する必要があります。したがって、ユーザーがこのフィールドを空白のままにすると、HTMLは次のようになります。
<div class="myClass error">
<asp:TextBox ID="txtMyTextBox" runat="server"></asp:TextBox>
</div>
これは可能ですか?この特定のバリデーターコントロールが検証などに失敗した場合にのみ起動するコードを背後に記述する方法があるかどうかはわかりません。ページ全体が無効な場合に実行されるコードを記述できることはわかっています。しかし、このバリデーターが無効を返したときにこのコードを実行したいだけです。これが理にかなっていることを願っています。
Corey