表单校验用jquery-validation 实现,基本功能很快实现。 在测试时发现自定义的一个比较开始结束日期的校验不起作用。
var $begin = $(param).val();
var reg = new RegExp('-', 'g');
$begin = $begin.replace(reg, '/');//正则替换
var end = value.replace(reg, '/');
if (new Date(parseInt(Date.parse($begin), 10)) > new Date(parseInt(Date.parse(end), 10))) {
return false;
} else {
return true;
}
}, "结束日期必须大于开始日期");
问题出在begin值获取的是空值? 这也能错吗?检查了一遍字母的大小写,没有发现问题。F12 查找input 的Id值,发现了2个,原来有modal打开,上面存在一样的Id,修改名字后问题解决。
基本上遇到类似看起来完全不成立的错误,可以先从字母大小写、是否重名情况存在来排查看看。