laydate.render({ elem: '#ldTime2', type: 'time', format: 'HH:mm', showBottom: false, done: function(value, date, endDate) { // 手动关闭选择器 this.done(); } });你说这段代码可以让时间选择器在选完时分秒后自动关闭,但为什么我的还是不能自动关闭?function中的三个形参是否需要我自己改?改成什么?
时间: 2023-11-22 07:54:26 浏览: 33
这段代码中的 `done` 函数是用来手动关闭选择器的,但是你在 `done` 函数中调用了 `this.done()`,这个调用会导致选择器再次关闭,所以选择器并没有自动关闭。
正确的做法是将 `this.done()` 移到 `done` 函数外面,在选择完时间后手动调用它即可。
至于 `done` 函数中的三个参数,它们是回调函数返回的值,你可以根据需要自行修改。其中 `value` 表示选择的时间值,`date` 表示选择的时间对象,`endDate` 表示结束时间对象(只有在范围选择器中才会用到)。
下面是一个示例代码:
```
laydate.render({
elem: '#ldTime2',
type: 'time',
format: 'HH:mm',
showBottom: false,
done: function(value, date){
// 手动关闭选择器
this.close();
}
});
```
相关问题
laydate.render({ elem: '#ldTime' , showBottom: false }); laydate.render({ elem: '#ldTime2', type: 'time', format: 'HH:mm' , showBottom: false });为什么前者不点确定就能自动完成选择,而后者选完三个选项后选择器也不关闭?
这是因为两个示例中使用的是不同的日期选择器插件。
第一个示例中使用的是 layui 的日期选择器插件,该插件在用户选择日期后会自动关闭选择器并触发一个回调函数。因此,用户不需要点击“确定”按钮。
而第二个示例中使用的是 layui 的时间选择器插件,该插件在用户选择时间后不会自动关闭选择器,因此用户需要手动点击“确定”按钮来关闭选择器。
如果你需要在选择时间后自动关闭选择器,可以在回调函数中添加代码来手动关闭选择器,如下所示:
```
laydate.render({
elem: '#ldTime2',
type: 'time',
format: 'HH:mm',
showBottom: false,
done: function(value, date, endDate) {
// 手动关闭选择器
this.done();
}
});
```
laydate.render({ elem: '#kaishishijian', type: 'datetime' }); laydate.render({ elem: '#jieshushijian', type: 'datetime' });
这段代码使用了LayDate插件来渲染日期时间选择器。具体来说,它做了以下几件事情:
1. 使用laydate.render方法来渲染日期时间选择器。
2. 设置选择器的目标元素,即elem属性值为'#kaishishijian'和'#jieshushijian'。
3. 设置选择器的类型,即type属性值为'datetime',表示同时选择日期和时间。
如果您有更具体的问题需要帮助解答,可以再提出来哦。