我正在尝试创建一个表单,我在几个不同的标签中进行相同的验证,但不起作用
开始日期不能大于结束日期
我需要以相同的形式验证3个不同标签中的字段。在第一个验证中,第二个选项卡中的工作不再有效。
日期格式为:mm / yyyy
这是我的代码:
function verifyDate(){
var enterDate = $('.start-date').val(),
exitDate = $('.end-date').val();
var startDate = enterDate.substring(3, 7),
leftDate = exitDate.substring(3, 7);
if (startDate > leftDate) {
$('.date-wrapper').addClass("has-error");
$('.print-error').append('The start date can not be greater than the end date');
allNextBtn.prop('disabled', true);
$('.start-date').focus();
} else {
$('.date-wrapper').removeClass("has-error");
allNextBtn.prop('disabled', false);
$('.print-error').remove();
}
};
有任何帮助吗?非常感谢
答案 0 :(得分:0)
verifyDate()
函数未在该小提琴中定义,因为您的JavaScript设置为执行onLoad。
选择"没有包装"解决小提琴上javascript部分左上角的问题。
allNextBtn.prop();
未定义
<强>更新强>
首先,在这里你从MM / YYYY拿走YYYY,对吧?
var startDate = enterDate.substring(3, 7),
leftDate = exitDate.substring(3, 7);
如果你想将它们作为年份进行比较,你必须将这些变量解析为整数,所以这个。
if (startDate > leftDate)
应该是
if (parseInt(startDate, 10) > parseInt(leftDate, 10))
提示:在这里您只检查年份,如果嵌入年份检查中,您应该提取月份并在另一年检查。