我有一个预订页面,有人会输入它的日期,我需要验证它,但我不知道如何在javascript中执行此操作这里是html代码
<input type="text" name="date" />
现在我已经看到了一些例子,但不够清楚,文本框中的条目应该类似于11/07/2011 3:45 AM
。我将非常感谢有关如何使用javascript实现此目的的任何帮助或建议。
答案 0 :(得分:2)
答案 1 :(得分:2)
如果不使用jQuery
var errormessage = "";
function checkIsValidDateTime(){
errormessage = "";
var isvalid = false;
var dt = document.getElementsByName("date")[0].value;
var parts = dt.split(" ");
if(parts.length == 3){
var date = parts[0];
var time = parts[1];
var ampm = parts[2];
if(ampm.length == 2 && (ampm.toLowerCase() == "am" || ampm.toLowerCase() == "pm")){
var validformatdate=/^\d{2}\/\d{2}\/\d{4}$/;
if (validformatdate.test(date)){
var validformattime = /^\d{1,2}:\d{2}$/;
if (validformattime.test(date)){
isvalid = true;
}else{errormessage = "Time is not in the format HH:MM";}
}else{errormessage = "Date is not in the format dd/mm/yyyy";}
}else{errormessage = "DateTime does not have AM/PM at the end";}
}else{errormessage = "DateTime is not in the format 11/07/2011 3:45 AM";}
return isvalid;
}
然后,当单击提交按钮时,设置onclick事件以调用该功能,如果它不为空,您甚至可以显示错误消息。如果函数返回true,则正常处理,然后停止提交。