layui日期组件laydate怎么取消秒的选择

夜涛姑娘_2809

夜涛姑娘_2809

2026-09-12

550人浏览

原创

最稳定隐藏秒列的方法是用css:.laydate-time-list>li:last-child{display:none},因秒列恒为最后一项,不依赖js时机且不影响format和done回调。

layui日期组件laydate怎么取消秒的选择

laydate 怎么隐藏秒选择列

直接用 CSS 隐藏秒那一列最稳定,不依赖 JS 执行时机,也不影响 format 和 done 回调逻辑。Layui 的时间面板结构固定:.laydate-time-list > li 每个 li 对应“时”“分”“秒”一列,秒列永远是最后一项。

加这段样式即可:

.laydate-time-list {
  padding-bottom: 0;
  overflow: hidden;
}
.laydate-time-list > li {
  width: 50% !important;
}
.laydate-time-list > li:last-child {
  display: none;
}

注意两点:
• 不要只靠 format: 'HH:mm',它只控制输出格式,秒列仍存在、可点、会干扰移动端点击区域
• :last-child 是安全的,无论你用 type: 'time' 还是 type: 'datetime',秒列始终在末位

laydate 设置 format 后秒还出现在输入框里

这是常见误解:设置 format: 'HH:mm' 只影响最终填入 input 的字符串,不影响面板行为或初始值解析。如果你传入带秒的字符串(如 '14:30:45')初始化,即使 format 是 'HH:mm',laydate 内部仍会保留秒信息,导致后续操作异常(比如 range 范围计算偏移)。

解决办法是初始化前主动截断秒:

  • 用 value 参数传入已处理的时间字符串,例如 value: new Date().toJSON().slice(11, 16)
  • 或在 ready 回调里用 JS 清掉秒(但不如 CSS 隐藏来得彻底)
  • 避免把后端返回的完整 ISO 时间(含秒)直接塞给 value,先 .slice(0, -3) 或 moment(...).format('HH:mm')

想限制分钟只显示整10分或半点,但又不想留秒列

必须分两步:先用 CSS 隐藏秒列,再在 ready 里操作分钟列 DOM。因为秒列 DOM 一旦被 remove(),分钟列索引会错位(比如原 [0]=时, [1]=分, [2]=秒,删掉秒后分变成索引 1,但某些版本 laydate 会重排结构)。

深蓝色网站后台管理系统layui框架模板-AdminPro
深蓝色网站后台管理系统layui框架模板-AdminPro

一款深蓝色网站后台管理系统layui框架模板

下载

推荐写法:

ready: function() {
  // 先确保秒列已隐藏(CSS 已生效)
  const minuteList = $('.laydate-time-list > li').eq(1).find('ol li');
  minuteList.each(function() {
    const txt = $(this).text().trim();
    if (txt !== '00' && txt !== '10' && txt !== '20' && 
        txt !== '30' && txt !== '40' && txt !== '50') {
      this.hidden = true; // 用 hidden,不用 remove
    }
  });
}

关键点:
• 用 this.hidden = true,不是 $(this).remove(),否则可能破坏 range 同步逻辑
• .eq(1) 是分钟列,前提是秒列已被 CSS 隐藏,索引才不会漂移
• 移动端测试时重点看点击热区是否正常,hidden 元素仍占位,remove 会导致列宽突变

为什么不用 laydate 自带的 min/max 控制秒

laydate 的 min/max 是针对完整时间戳(毫秒级)的,不能按“秒”粒度约束面板选项。你设 min: '08:00:00',它照样允许选 08:00:59 —— 因为那是合法时间。所谓“取消秒的选择”,本质是 UI 层剔除交互入口,不是校验逻辑。

真正需要秒精度的场景(如定时任务),应该换用 type: 'datetime' + 完整 format;如果业务只要小时/半小时粒度,硬改 laydate 成本高、维护难,不如上原生 <input type="time" step="1800"> 或轻量 hour-picker。

最后提醒:layui 3.x 已弃用 laydate,新项目别再深陷定制,老系统修 bug 时优先保 CSS 方案,JS 操作 DOM 是备选。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
PDF转图片方法
PDF转图片方法

需要把 PDF 页面用于上传、预览、分享或图片归档时,PDF 转图片方法专题整理 JPG/PNG 格式选择、逐页导出、清晰度设置、批量下载和结果检查等流程,帮助用户稳定完成 PDF 图片化处理。

2026.09.30

0

26

PixTV AI视频生成与无限画布创作
PixTV AI视频生成与无限画布创作

PixTV专题整理AI视频与视觉内容创作相关功能使用教程,涵盖AI生图、视频生成、无限画布、多模型创作、素材管理、声音音乐及视频剪辑等功能,帮助用户快速掌握PixTV从创意到成片的完整制作方法。

2026.09.29

0

15

Buffalo框架数据库开发全教程
Buffalo框架数据库开发全教程

本专题围绕Buffalo框架数据库开发,讲解database.yml多环境配置、soda与fizz迁移生成回滚、模型结构体标签、增删改查与条件查询、一对多与多对多关联、数据校验、回调钩子、事务处理及原生SQL执行能力。

2026.09.23

200

15

Buffalo框架路由与请求处理实操指南
Buffalo框架路由与请求处理实操指南

本专题讲解Buffalo框架路由与请求处理机制,涵盖路由注册与分组、资源路由、Handler编写规范、Context上下文方法、参数绑定、中间件编写挂载、Session与Cookie读写、Flash消息及错误页面定制方法。

2026.09.23

120

15

Buffalo框架零基础入门教程
Buffalo框架零基础入门教程

本专题整理Buffalo框架入门内容,涵盖Go环境准备、buffalo CLI安装、新项目生成、目录结构说明、dev热加载启动、数据库连接配置与常见报错排查,帮助新手按约定优于配置的思路跑通第一个Buffalo框架应用。

2026.09.23

100

15

Conan创建软件包配方指南
Conan创建软件包配方指南

本专题介绍通过conanfile.py创建软件包的方法,讲解包名、版本、依赖和构建设置等基础信息,以及source、build、package、package_info等常用方法的作用及编写思路。

2026.09.22

60

12

Conan二进制包配置指南
Conan二进制包配置指南

本专题介绍Conan根据操作系统、编译器、架构和构建类型生成二进制包的方法,讲解Profile、Settings、Options及Package ID的作用,帮助管理不同平台和编译环境下的包版本。

2026.09.22

80

13

Conan私有仓库搭建教程
Conan私有仓库搭建教程

本专题系统的讲解Conan私有仓库的搭建流程,涵盖仓库服务部署、存储目录配置、用户认证、权限划分和远程地址添加,并介绍内部C++依赖包的上传、下载及版本维护方法。

2026.09.22

60

19

loomy官网入口地址合集
loomy官网入口地址合集

本专题汇总了 Loomy 桌面 AI 助理的官方入口地址合集及使用指南。提供 macOS 与 Windows 客户端下载 。Loomy 是讯飞推出的桌面级 AI 工作搭子,支持文件整理、数据分析、网页操作及通过飞书/钉钉远程操控电脑,助你高效完成本地办公任务 。

2026.09.22

80

19

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
ThinkPHP配置开发与CMS后台实战
ThinkPHP配置开发与CMS后台实战

共87课时 | 12.6万人学习

第二十三期_综合实战
第二十三期_综合实战

共89课时 | 10.8万人学习

Layui 快速入门精讲
Layui 快速入门精讲

共5课时 | 1.6万人学习