laydate组件中一个细小的用户习惯问题

分享 未结 1 864
爱咖啡
爱咖啡 2017-8-24
悬赏:5飞吻
laydate组件在日期切换时,不能够同步,在设置了showBottom:false时,选取目标日期后点击非日期控件处关闭,并不会去同步到目标元素上显示选中值,不过这个问题可以通过change回调进行弥补,如下代码便可以实现。
//layui日期时间组件绑定
layui.use('laydate', function(){
var laydate = layui.laydate;
var date= {
format:'yyyy-MM',
type:'month',
theme:'grid',
showBottom:false,
done:function (value, date, endDate) {
console.log(value);
getDataJson(value);
},
change:function (value, date, endDate) {
$("#date").val(value);
getDataJson(value);
}
};
date.elem = '#date';
//执行一个laydate
laydate.render(date);
});

疑问:为什么在showBottom:false时,日期控件的行为机制还是保持showBottom:true的机制,可现在控件界面上已经没有相应的按钮了,只能通过change事件能够实现实时的控件与目标元素显示值同步的办法,按理来说实时的同步应该是很正常的一个需求吧,不知闲心前辈处于什么考虑没有去改变这种设置。希望得到大家的回答。

补充:
在默认或者type:'date'时,选中值会里面同步到目标元素内显示并且关闭控件界面。
代码如下:
//layui日期时间组件绑定
layui.use('laydate', function(){
var laydate = layui.laydate;
var start = {
format:'yyyy-MM-dd',
type:'date',
showBottom:false
};
var end = {
format:'yyyy-MM-dd',
type:'date',
// showBottom:false
};
start.elem = '#_start';
//执行一个laydate
laydate.render(start);
end.elem = '#_end';
laydate.render(end);
});
回帖
本帖已设置禁止回复