在laydate组件中,回调方法如下,但是并不生效!
laydate.render({
elem: '#test'
,done: function(value, date, endDate){
console.log(value); //得到日期生成的值,如:2017-08-18
console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。
}
});
在layui官网,贤心巨佬回复网友的解决办法是在done下添加
$('#test').change();
则:
laydate.render({
elem: '#test'
,done: function(value, date, endDate){
$('#test').change();
console.log(value); //得到日期生成的值,如:2017-08-18
console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。
}
});
可是,测试发现依然无效,开始以为可能还有别的问题。
所以所以,曲线救国。
二次渲染失败的问题,那就直接把监听回调改为第一次渲染。
好了,问题折中解决。
因为我想用的是年月选择,而现在只能年月日选择。。。。
记录下。
时:2019年4月20日16点17分
以上
后来,想不通,为什么一定要二次渲染呢?
一次渲染,把回调写一起呢?
如下:
// 年月选择器 监听时间控件
laydate.render({
elem: '#dataTime',
type: 'month',
done: function (value, date, endDate) {
console.log(value); //得到日期生成的值,如:2017-08-18
}
});
事实证明此方法可行!