laydate.render({ elem: '#tbrq' , type: 'year' , value:getLastDate(0).substr(0,4) , btns: ['now', 'confirm'] , showBottom: false ,done: function(value, date, endDate){ console.log(value); // 日期字符,如: 2017-08-18 getScore(value); this.close(); } });为什么这个日期选择器也不能自动关闭?应该在选完年份后自动关闭的
时间: 2023-07-16 09:16:17 浏览: 135
根据你提供的代码,我没有看到 `this.close()` 的实现。这可能是原因之一。你需要添加 `this.close()` 来关闭日期选择器。下面是修改后的代码:
```
laydate.render({
elem: '#tbrq',
type: 'year',
value:getLastDate(0).substr(0,4),
btns: ['now', 'confirm'],
showBottom: false,
done: function(value, date, endDate){
console.log(value); // 日期字符,如: 2017-08-18
getScore(value);
this.close();
}
});
```
如果这个修改后的代码还不能解决问题,那么你可能需要检查日期选择器的版本和相关的依赖文件是否正确引入。
相关问题
laydate.render({ elem: '#kaishishijian', type: 'datetime' }); laydate.render({ elem: '#jieshushijian', type: 'datetime' });
这段代码使用了LayDate插件来渲染日期时间选择器。具体来说,它做了以下几件事情:
1. 使用laydate.render方法来渲染日期时间选择器。
2. 设置选择器的目标元素,即elem属性值为'#kaishishijian'和'#jieshushijian'。
3. 设置选择器的类型,即type属性值为'datetime',表示同时选择日期和时间。
如果您有更具体的问题需要帮助解答,可以再提出来哦。
laydate.render({ elem: '#effectiveBeginTime', // 对应 HTML 元素的选择器 type: 'date', // 控件类型为日期选择器 done: function (value, date) { // 选择日期时的回调函数 let end = $("#effectiveEndTime").val(); if (end) { var date1 = new Date(value); var date2 = new Date(end); if (date1.getTime() > date2.getTime()) { $("#effectiveEndTime").val(""); } } endDate.config.min = { // 设置结束日期框的最小值为这个日期框选择的日期 year: date.year, month: date.month - 1, // 数组下标从 0 开始 date: date.date, }; } }); // 结束日期框配置 var endDate = laydate.render({ elem: '#effectiveEndTime' // 对应 HTML 元素的选择器 });怎么优化一下
在代码中,我们可以将选择日期时的回调函数 done 中的代码提取出来,减少代码冗余。将其封装成一个函数,然后在 done 中调用该函数即可。另外,可以使用对象字面量的方式来进行配置,使代码更加简洁。以下是优化后的代码:
```
// 开始日期框配置
laydate.render({
elem: '#effectiveBeginTime',
type: 'date',
done: function(value, date) {
checkEndDate(value, date);
}
});
// 结束日期框配置
var endDate = laydate.render({
elem: '#effectiveEndTime'
});
function checkEndDate(value, date) {
let end = $("#effectiveEndTime").val();
if (end) {
var date1 = new Date(value);
var date2 = new Date(end);
if (date1.getTime() > date2.getTime()) {
$("#effectiveEndTime").val("");
}
}
endDate.config.min = {
year: date.year,
month: date.month - 1,
date: date.date,
};
}
```
阅读全文