2016-09-29 5 views
0

私は特定の形式である必要がある番号を持っています:123-12345678。 3つの数字、次にダッシュ、次に8つの数字。番号が特定の形式であることを確認してください

数字だけが入力されていることを確認していますが、正しい形式が入力されていることを確認するにはどうすればよいですか?

function Validate(event) { 
    var regex = new RegExp("^[0-9-]+$"); 
    var str = String.fromCharCode(!event.charCode ? event.which : event.charCode); 
    if (regex.test(str)) { 
    return true; 
    } else { 
    event.preventDefault(); 
    alert("Character " + str + " is not allowed"); 
    return false; 
    } 
} 

検証機能は、各キープレスに呼び出されます。ただ提出する前に確認してください

^\d{3}-\d{8}$ 

onkeypressをチェックしないでください:あなたは、この正規表現を使用することができます

<asp:TextBox runat="server" ID="txtNumber" onkeypress="return Validate(event);"></asp:TextBox> 
+2

新しいRegExp( "^ \ d {3} - \ d {8} $"); ' –

答えて

0

数字またはダッシュの場合、入力した文字列の部分文字列をチェックできます。すなわち:str.substr(0, 3);私は巨大なフレームワークのファンではありませんが、とにかくjqueryを使用している場合は、jQuery.isNumericを文字列部分をチェックするクイックソリューションとして実行できます。

関連する問題