現在、JavaScript を使用してテキストボックスに数字が含まれているかどうかを検証する CustomValidator を使用しています。検証エラーを満たすと、送信するまでメッセージがクリアされません。これを修正して、他のすぐに使用できるバリデーターのようにクリアするにはどうすればよいですか? C# で ASP.NET を使用しています。
<script type="text/javascript">
function testnumbers(source, args) {
var s1 = document.getElementById('<%=arubaBox.ClientID%>').value; var s2 = document.getElementById('<%=shipBox.ClientID%>').value;
if (s1 == "" && s2 == "")
args.IsValid = false;
else if (s1 == "" && s2 != "")
args.IsValid = true;
else if (s1 != "" && s2 == "")
args.IsValid = true;
else if (s1 != "" && s2 !== "") args.IsValid = true;
}
</script>
<asp:TextBox ID="aBox" runat="server" MaxLength="7"></asp:TextBox>
<asp:CustomValidator
ID="CustomValidator1" runat="server" ClientValidationFunction="testnumbers"
ErrorMessage="CustomValidator"
ValidationGroup="Contact"
Text=" Please provide A # or Shipping Account #"
CssClass="errormessage"
Display="Dynamic" >
</asp:CustomValidator>
 <asp:RegularExpressionValidator
id="RegularExpressionValidator1"
runat="server"
ErrorMessage="Field not valid!"
ControlToValidate="aBox"
ValidationExpression="[0-9a-zA-Z]{5,}"
ValidationGroup="Contact"
/> 
<asp:RegularExpressionValidator
ID="NumErrAru"
runat="server"
ControlToValidate="aBox"
CssClass="errormessage"
ErrorMessage=" Numbers Only"
ValidationExpression="^[0-9]+$"
ValidationGroup="Contact"
Display="Dynamic"
Text=" Numbers Only">
</asp:RegularExpressionValidator>