ホームページ > 記事 > ウェブフロントエンド > クエリの日付が有効かどうかを判断する純粋な JavaScript date_javascript スキル
以下の内容は主に js コードを通じて紹介されており、コードは比較的単純であり、良い提案があれば歓迎します。
以下に示すように、クエリ条件に「2012-3-4」などの日付が含まれる場合、クエリを実行する前に、入力された日付文字列が有効な日付であるかどうかを確認します。
var snapshot_createTime_begin=$(selector+" input[name='createTime_begin']").val().trim(); var snapshot_createTime_end=$(selector +" input[name='createTime_end']").val().trim(); try{ //判断开始时间是否为有效的日期 if(snapshot_createTime_begin!=""&&new Date(snapshot_createTime_begin).getDate()!=snapshot_createTime_begin.match(/-\d{0,2}$/g)[0].replace(/-/g,"")){ throw new Error(); } //判断结束时间是否为有效的日期 if(snapshot_createTime_end!=""&&new Date(snapshot_createTime_end).getDate()!=snapshot_createTime_end.match(/-\d{0,2}$/g)[0].replace(/-/g,"")){ throw new Error(); } if(Date.parse(snapshot_createTime_begin)>Date.parse(snapshot_createTime_end)){ //alert("开始日期不应当超过结束日期!"); alert("开始日期不应当超过结束日期!"); return ; } $.extend(pageObj,{ createTimeBegin:snapshot_createTime_begin, createTimeEnd:snapshot_createTime_end, }); initPagination(); }catch(e){ //alert("请输入有效日期!") alert("请输入有效日期!"); }
js は、年、月、日が有効な日付であるかどうかを判断します
function isdate(intYear,intMonth,intDay){ if(isNaN(intYear)||isNaN(intMonth)||isNaN(intDay)) return false; if(intMonth>12||intMonth<1) return false; if ( intDay<1||intDay>31)return false; if((intMonth==4||intMonth==6||intMonth==9||intMonth==11)&&(intDay>30)) return false; if(intMonth==2){ if(intDay>29) return false; if((((intYear%100==0)&&(intYear%400!=0))||(intYear%4!=0))&&(intDay>28))return false; } return true; }