2016-04-16 6 views
1

フォームに記入する際にSSN番号を検証しようとしていますが、ユーザーが書式と一致しないと、エラーメッセージが表示されます。ASP.Net - フォームに記入しながら情報を検証しますか?

これまでのところ、「送信」ボタンを押したところでエラーが表示されていましたが、ユーザーがテキストボックスからタブアウトするとすぐにその欲しいと思います。

これまでのところ、これはあなたがテキストボックスのonchangeイベントを設定することができます私のコード

<asp:TextBox id="txtSSN" runat="server"/> (999-99-9999) <br> 
<asp:RegularExpressionValidator id="ValidateSSN" 
    runat="server" 
    ControlToValidate="txtSSN" 
    ValidationExpression="[0-9]{3,3}-[0-9]{2,2}-[0-9]{4,4}" 
    ErrorMessage="SSNO must be in the form 999-99-9999" 
    Display="None"/> 
+0

テキストボックスのOnTextChangedまたはOnBlurイベントを使用できます –

答えて

2

です:この関数を呼び出すこと

<asp:TextBox id="txtSSN" runat="server" onchange="ValidateSSN();" /> 

を:

function ValidateSSN() { 
    var validator = document.getElementById('<%= ValidateSSN.ClientID %>'); 
    if (validator) { 
     ValidatorValidate(validator); 
     if (!validator.isvalid) { 
      alert('The SSN is not valid!'); 
     } 
    } 
} 

ValidateSSNが呼び出されますテキストが変更された場合にのみ、TextBoxがフォーカスを失ったときに発生します。フォーカスが失われるたびにフィールドを検証する場合は、テキストが変更されていなくてもonchangeの代わりにonblurを設定できます。

関連する問題