在客户端的下拉菜单中验证选定月份和年份中的选定日期
validate selected date in selected month and year in dropdowns in client side
我正在使用我的mvc 4应用程序。这里我有"日"、"月"、"年"下拉菜单来选择出生日期。现在我想验证选定月份和年份中的选定日期(特别是2月29日、28日和所有月份)。有定义的jquery或javascript函数吗?
请帮。
function isDate(txtDate) {
var currVal = txtDate;
if (currVal == '')
return false;
//Declare Regex
var rxDatePattern = /^('d{1,2})('/|-)('d{1,2})('/|-)('d{4})$/;
var dtArray = currVal.match(rxDatePattern); // is format OK?
if (dtArray == null)
return false;
//Checks for dd/mm/yyyy format.
var dtDay = dtArray[1];
var dtMonth = dtArray[3];
var dtYear = dtArray[5];
if (dtMonth < 1 || dtMonth > 12)
return false;
else if (dtDay < 1 || dtDay > 31)
return false;
else if ((dtMonth == 4 || dtMonth == 6 || dtMonth == 9 || dtMonth == 11) && dtDay == 31)
return false;
else if (dtMonth == 2) {
var isleap = (dtYear % 4 == 0 && (dtYear % 100 != 0 || dtYear % 400 == 0));
if (dtDay > 29 || (dtDay == 29 && !isleap))
return false;
}
return true;
}
此格式为"dd/MM/yyyy"
<script type="text/javascript">
function checkdate(input){
var validformat=/^'d{2}'/'d{2}'/'d{4}$/ //Basic check for format validity
var returnval=false
if (!validformat.test(input.value))
alert("Invalid Date Format. Please correct and submit again.")
else{
var monthfield=input.value.split("/")[0]
var dayfield=input.value.split("/")[1]
var yearfield=input.value.split("/")[2]
var dayobj = new Date(yearfield, monthfield-1, dayfield)
if ((dayobj.getMonth()+1!=monthfield)||(dayobj.getDate()!=dayfield)||(dayobj.getFullYear()!=yearfield))
alert("Invalid Day, Month, or Year range detected. Please correct and submit again.")
else
returnval=true
}
if (returnval==false) input.select()
return returnval
}
</script>
你调用这个函数的onClick提交按钮,你必须传递日期在mm/dd/yyyy格式的这个函数。它将验证所有日期。如果你有问题,请回复我。
相关文章:
- 将客户端特定的日期格式返回到服务器MVC4
- 使用JavaScript将客户端日期/时间字符串转换为JSON日期/时间串
- 使用 JavaScript 的客户端日期/时间戳一致(考虑时区)
- 从客户端的对象数组中获取最新日期的优雅方法是什么
- 如何比较客户端日期和服务器日期
- 基于客户端日期格式的Javascript日期验证
- 如何使用客户端时区将数据库时间戳输出为客户端中的日期戳
- 引导日期选择器占用客户端PC时间,如何从服务器设置默认时间
- 日期编辑 在客户端设置日期值
- 服务器和客户端时区上的日期时间差异
- 从客户端的 mongo _id 中提取日期
- 想要显示服务器 UTC 日期时间,而不考虑客户端计算机的日期时间
- 当从客户端从ajax调用检索时,我在服务器上的日期时间增加了12.30小时
- 从JavaScript客户端发送到.NET的字符串格式的UTC日期正在转换为DateTime
- 获取客户端's的日期格式名称
- 将PHP响应日期转换为客户端本地时间
- 获取Javascript中的客户端日期和时间格式
- 根据所选日期从客户端填充表格
- Javascript客户端日期格式
- 按照客户端日期时间格式显示日期