2016-08-24 11 views
0

は私がGoogle検索から多くのjavascriptのソリューションを試してみましたASP.netテキストボックスJavascriptの日付マスク(ノーjQueryの)

に日付マスク(dd/mm/yyyy)を適用したい、残念ながら何も場合は特に、バックスペース、正常に動作しません。

誰でもスクリプトをガイドできますか?

+0

あなたがしようとしていることがわからない...作業中のコードの一部と達成しようとしているものを投稿できますか? –

+0

これを参照してください:[JQueryを使用しないでJavaScriptを使用した日付マスキングの方法?](http://stackoverflow.com/questions/31108620/how-to-do-date-masking-using-javascript-without-jquery) –

+0

こんにちは@Protectator、クイック返信いただきありがとうございます。私はあなたが提供したリンクの中ですでに提案を試みました。その作業は不適切です。バックスペースが正しく動作していない場合、アルファベットを制御することはできません。 – Srinivas

答えて

0
<asp:TextBox ID="txtDate2" runat="server" Text="11/11/2011" /> 
    <asp:CustomValidator runat="server" ClientValidationFunction="ValidateDate" ControlToValidate="txtDate2" 
    ErrorMessage="Invalid Date." ValidationGroup="Group2" /> 
<br /> 
<br /> 
<asp:Button ID="Button2" Text="Validate" runat="server" ValidationGroup="Group2" /> 
<script type="text/javascript"> 
    function ValidateDate(sender, args) { 
     var dateString = document.getElementById(sender.controltovalidate).value; 
     var regex = /(((0|1)[1-9]|2[0-9]|3[0-1])\/(0[1-9]|1[0-2])\/((19|20)\d\d))$/; 
     if (regex.test(dateString)) { 
      var parts = dateString.split("/"); 
      var dt = new Date(parts[1] + "/" + parts[0] + "/" + parts[2]); 
      args.IsValid = (dt.getDate() == parts[0] && dt.getMonth() + 1 == parts[1] && dt.getFullYear() == parts[2]); 
     } else { 
      args.IsValid = false; 
     } 
    } 
</script>