動作しない私のコードです:正規表現は、ここで
$('#test').on('click',function(){
var regdate = new RegExp('^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2})$|^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2}\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$');
if (regdate.test($('#datepicker').val()))
{
$('#response').text("Okay");
}
else
{
$('#response').text("Nooo");
}
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="form-control noColorFocus" name="dateMinChargement" id="datepicker" />
<button id="test">Valider</button>
<div id="response"></div>
我々はregdate.test()
しようとすると、17/01/2017
のような日が...任意のアイデアをtrue
を返す必要がありますか?
私はあなたの正規表現が少し冗長かもしれないと思います。ここにいくつかの簡単な解決策があります: http://stackoverflow.com/questions/12472976/regex-validate-european-date-format-with-multiple-separators 分離文字をいくつかのものに置き換える必要があるかもしれませんエスケープされたスラッシュ。 – rob
バックスラッシュを意味しますか? – Kuartz
いいえ、エスケープされたスラッシュを意味するので、バリデータは1-2-2013または1.2.2013の代わりに1/2/2013をキャッチします。すなわち\/ – rob