2 lfc255 lfc255 于 2014.12.03 11:14 提问

jqueryeasyui的datetimebox验证两个时间的大小

用自带的validatebox。怎么验证两个时间的大小。即:$.extend($.fn.validatebox.defaults.rules, { }。

3个回答

save4me
save4me   Ds   Rxr 2014.12.03 13:05

参考 EasyUI validate
$.extend($.fn.validatebox.defaults.rules, {
compareDate: {
validator: function (value, param) {
return dateCompare($(param[0]).datetimebox('getValue'), value); //注意easyui 时间控制获取值的方式
},
message: '开始日期不能大于结束日期.'
}, validateUserName: {
validator: function (value) {
return validateUserName(value);
},
message: '该账户已经存在.'
}
});
//js比较日期大小
function dateCompare(startdate, enddate) {
var arr = startdate.split("-");
var starttime = new Date(arr[0], arr[1], arr[2]);
var starttimes = starttime.getTime();

        var arrs = enddate.split("-");
        var lktime = new Date(arrs[0], arrs[1], arrs[2]);
        var lktimes = lktime.getTime();

        if (starttimes > lktimes) {
            return false;
        }
        else
            return true;
    }

save4me
save4me 不客气
接近 3 年之前 回复
lfc255
lfc255 用不了,但是还是很感谢
接近 3 年之前 回复
save4me
save4me 你把上面的代码的compareDate换成你的equalsDate,validType的函数名要和rules里面的函数名对应。
大约 3 年之前 回复
lfc255
lfc255 <input class="easyui-datetimebox" type="text" id="endtime" name="workhour.endTime" data-options="required:'true',missingMessage:'下班时间必须填写',editable:'false'" validType="equalsDate['#startime']" />
大约 3 年之前 回复
lfc255
lfc255 这个$(param[0]).datetimebox('getValue')我用alert看时,拿不到值呀
大约 3 年之前 回复
lfc255
lfc255   2014.12.03 13:50



用$.extend($.fn.validatebox.defaults.rules, {}怎么弄,详细一点,谢谢!

save4me
save4me   Ds   Rxr 2014.12.18 10:00

把上面的代码的compareDate换成你的equalsDate,validType的函数名要和rules里面的函数名对应,解决你的问题了吗?
上面的答案有帮助吗?如果还有问题,请提出来,如果对答案满意,请顶一下,并标记为采纳答案,谢谢!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!