laydate.html 52 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>镜像站@日期和时间组件文档 - Layui</title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  9. <meta name="apple-mobile-web-app-status-bar-style" content="black">
  10. <meta name="apple-mobile-web-app-capable" content="yes">
  11. <meta name="format-detection" content="telephone=no">
  12. <script>
  13. ;!function(){self!==parent&&(location.href="http://www.baidu.com/")}();
  14. </script>
  15. <link rel="stylesheet" href="/public/layui/dist/css/layui.css" tppabs="http://res.layui.com/layui/dist/css/layui.css?t=1632428048260" media="all">
  16. <link rel="stylesheet" href="/public/static/css/global.css" tppabs="http://res.layui.com/static/css/global.css?t=1632428048260-19" media="all">
  17. </head>
  18. <body>
  19. <div class="layui-header header header-doc" autumn>
  20. <div class="layui-container">
  21. <a class="logo" href="../../index.html" tppabs="http://www.layui.com/">
  22. <img src="/public/static/images/layui/logo.png" tppabs="http://res.layui.com/static/images/layui/logo.png" alt="layui">
  23. </a>
  24. <div class="layui-form layui-hide-xs component" lay-filter="LAY-site-header-component"></div>
  25. <div class="layui-hide-xs site-notice"></div>
  26. <ul class="layui-nav" id="LAY_NAV_TOP">
  27. <li class="layui-nav-item layui-this">
  28. <a href="../index.html" tppabs="http://www.layui.com/doc/">文档</a>
  29. </li>
  30. <li class="layui-nav-item ">
  31. <a href="../../demo/index.html" tppabs="http://www.layui.com/demo/">示例</a>
  32. </li>
  33. <li class="layui-nav-item">
  34. <a href="javascript:;">
  35. <!--<span class="layui-badge-dot" style="left:0; right: auto; margin: -4px 0 0 5px;"></span>-->
  36. 周边
  37. </a>
  38. <dl class="layui-nav-child layui-nav-child-c">
  39. <dd class="layui-hide-sm layui-show-xs" lay-unselect>
  40. <a href="https://gitee.com/sentsin/layui/issues" target="_blank" rel="nofollow">问题反馈</a>
  41. <hr>
  42. </dd>
  43. <dd lay-unselect><a href="../../alone.html" tppabs="http://www.layui.com/alone.html" target="_blank" lay-unselect>独立组件</a></dd>
  44. <dd lay-unselect><a href="../../../fly.layui.com/extend/index.html" target="_blank">扩展组件</a></dd>
  45. </dl>
  46. </li>
  47. <li class="layui-nav-item layui-hide-xs">
  48. <a href="http://gitee.com/sentsin/layui/issues" target="_blank" rel="nofollow">反馈</a>
  49. </li>
  50. </ul>
  51. </div>
  52. </div>
  53. <!-- 让IE8/9支持媒体查询,从而兼容栅格 -->
  54. <!--[if lt IE 9]>
  55. <script src="../../../other/html5shiv/r29/html5.min.js" tppabs="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
  56. <script src="../../../other/respond.js/1.4.2/respond.min.js" tppabs="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
  57. <![endif]-->
  58. <ul class="site-dir">
  59. <li><a href="#use"><cite>快速使用</cite></a></li>
  60. <li><a href="#options"><cite>基础参数选项</cite></a></li>
  61. <ul style="margin-left: 15px;">
  62. <li><a href="#elem">绑定元素<em>elem</em></a></li>
  63. <li><a href="#type">控件类型<em>type</em></a></li>
  64. <li><a href="#range">范围选择<em>range</em></a></li>
  65. <li><a href="#format">自定义格式<em>format</em></a></li>
  66. <li><a href="#value">初始值<em>value</em></a></li>
  67. <li><a href="#isInitValue">初始值填充<em>isInitValue</em></a></li>
  68. <li><a href="#isPreview">选择值预览<em>isPreview</em></a></li>
  69. <li><a href="#minmax">最大/小日期<em>min/max</em></a></li>
  70. <li><a href="#trigger">自定义事件<em>trigger</em></a></li>
  71. <li><a href="#show">默认显示<em>show</em></a></li>
  72. <li><a href="#position">定位方式<em>position</em></a></li>
  73. <li><a href="#zIndex">层叠顺序<em>zIndex</em></a></li>
  74. <li><a href="#showBottom">底部栏<em>showBottom</em></a></li>
  75. <li><a href="#btns">工具按钮<em>btns</em></a></li>
  76. <li><a href="#lang">语言<em>lang</em></a></li>
  77. <li><a href="#theme">主题<em>theme</em></a></li>
  78. <li><a href="#calendar">公历节日<em>calendar</em></a></li>
  79. <li><a href="#mark">标注重要日子<em>mark</em></a></li>
  80. </ul>
  81. <li>回调</li>
  82. <ul style="margin-left: 15px;">
  83. <li><a href="#onready">控件初始打开的回调</a></li>
  84. <li><a href="#onchange">日期被切换的回调</a></li>
  85. <li><a href="#ondone">选择完毕的回调</a></li>
  86. </ul>
  87. <li><a href="#hint"><cite>弹出提示</cite></a></li>
  88. <li><a href="#path"><cite>配置基础路径</cite></a></li>
  89. <li><a href="#other"><cite>其它方法</cite></a></li>
  90. </ul>
  91. <div class="layui-container layui-row">
  92. <div class="layui-col-md3">
  93. <div class="layui-panel site-menu">
  94. <ul class="layui-menu layui-menu-lg">
  95. <li class="layui-menu-item-group" lay-options="{type: 'group', isAllowSpread: true}">
  96. <div class="layui-menu-body-title">
  97. 基础说明
  98. </div>
  99. <hr>
  100. <ul>
  101. <li class="">
  102. <div class="layui-menu-body-title">
  103. <a href="../index.html" tppabs="http://www.layui.com/doc/">
  104. <span>开始使用 </span>
  105. <span class="layui-font-12 layui-font-gray">Getting Started</span>
  106. </a>
  107. </div>
  108. </li>
  109. <li class="">
  110. <div class="layui-menu-body-title">
  111. <a href="../base/infrastructure.html" tppabs="http://www.layui.com/doc/base/infrastructure.html">
  112. <span>底层方法 </span>
  113. <span class="layui-font-12 layui-font-gray">基础支撑</span>
  114. </a>
  115. </div>
  116. </li>
  117. <li class="">
  118. <div class="layui-menu-body-title">
  119. <a href="../base/element.html" tppabs="http://www.layui.com/doc/base/element.html">
  120. <span>页面元素 </span>
  121. <span class="layui-font-12 layui-font-gray">规范 公共类 属性</span>
  122. </a>
  123. </div>
  124. </li>
  125. <li class="">
  126. <div class="layui-menu-body-title">
  127. <a href="../base/modules.html" tppabs="http://www.layui.com/doc/base/modules.html">
  128. <span>模块规范 </span>
  129. <span class="layui-font-12 layui-font-gray">使用 扩展</span>
  130. </a>
  131. </div>
  132. </li>
  133. <li class="">
  134. <div class="layui-menu-body-title">
  135. <a href="../base/faq.html" tppabs="http://www.layui.com/doc/base/faq.html">
  136. <span>常见问题 </span>
  137. <span class="layui-font-12 layui-font-gray">FAQ</span>
  138. </a>
  139. </div>
  140. </li>
  141. <li class="">
  142. <div class="layui-menu-body-title">
  143. <a href="../base/changelog.html" tppabs="http://www.layui.com/doc/base/changelog.html">
  144. <span>更新日志 </span>
  145. <span class="layui-font-12 layui-font-gray">changelog</span>
  146. <span class="layui-badge-dot"></span>
  147. </a>
  148. </div>
  149. </li>
  150. </ul>
  151. </li>
  152. <li class="layui-menu-item-group" lay-options="{type: 'group', isAllowSpread: true}">
  153. <div class="layui-menu-body-title">
  154. 页面元素
  155. </div>
  156. <hr>
  157. <ul>
  158. <li class="">
  159. <div class="layui-menu-body-title">
  160. <a href="../element/layout.html" tppabs="http://www.layui.com/doc/element/layout.html">
  161. <span>布局 </span>
  162. <span class="layui-font-12 layui-font-gray">栅格 后台管理布局</span>
  163. </a>
  164. </div>
  165. </li>
  166. <li class="">
  167. <div class="layui-menu-body-title">
  168. <a href="../element/color.html" tppabs="http://www.layui.com/doc/element/color.html">
  169. <span>颜色 </span>
  170. <span class="layui-font-12 layui-font-gray">主色调 颜色搭配</span>
  171. </a>
  172. </div>
  173. </li>
  174. <li class="">
  175. <div class="layui-menu-body-title">
  176. <a href="../element/icon.html" tppabs="http://www.layui.com/doc/element/icon.html">
  177. <span>图标 </span>
  178. <span class="layui-font-12 layui-font-gray">iconfont 字体图标</span>
  179. </a>
  180. </div>
  181. </li>
  182. <li class="">
  183. <div class="layui-menu-body-title">
  184. <a href="../element/anim.html" tppabs="http://www.layui.com/doc/element/anim.html">
  185. <span>动画 </span>
  186. <span class="layui-font-12 layui-font-gray">内置 CSS3 动画</span>
  187. </a>
  188. </div>
  189. </li>
  190. <li class="">
  191. <div class="layui-menu-body-title">
  192. <a href="../element/button.html" tppabs="http://www.layui.com/doc/element/button.html">
  193. <span>按钮 </span>
  194. <span class="layui-font-12 layui-font-gray">button</span>
  195. </a>
  196. </div>
  197. </li>
  198. <li class="">
  199. <div class="layui-menu-body-title">
  200. <a href="../element/form.html" tppabs="http://www.layui.com/doc/element/form.html">
  201. <span>表单 </span>
  202. <span class="layui-font-12 layui-font-gray">form 元素集合</span>
  203. </a>
  204. </div>
  205. </li>
  206. <li class="">
  207. <div class="layui-menu-body-title">
  208. <a href="../element/nav.html" tppabs="http://www.layui.com/doc/element/nav.html">
  209. <span>导航 </span>
  210. <span class="layui-font-12 layui-font-gray">nav 面包屑</span>
  211. </a>
  212. </div>
  213. </li>
  214. <li class="">
  215. <div class="layui-menu-body-title">
  216. <a href="../element/menu.html" tppabs="http://www.layui.com/doc/element/menu.html">
  217. <span>菜单 </span>
  218. <span class="layui-font-12 layui-font-gray">menu 基础菜单</span>
  219. <span class="layui-badge-dot"></span>
  220. </a>
  221. </div>
  222. </li>
  223. <li class="">
  224. <div class="layui-menu-body-title">
  225. <a href="../element/tab.html" tppabs="http://www.layui.com/doc/element/tab.html">
  226. <span>选项卡 </span>
  227. <span class="layui-font-12 layui-font-gray">Tabs 切换</span>
  228. </a>
  229. </div>
  230. </li>
  231. <li class="">
  232. <div class="layui-menu-body-title">
  233. <a href="../element/progress.html" tppabs="http://www.layui.com/doc/element/progress.html">
  234. <span>进度条 </span>
  235. <span class="layui-font-12 layui-font-gray">progress</span>
  236. </a>
  237. </div>
  238. </li>
  239. <li class="">
  240. <div class="layui-menu-body-title">
  241. <a href="../element/panel.html" tppabs="http://www.layui.com/doc/element/panel.html">
  242. <span>面板 </span>
  243. <span class="layui-font-12 layui-font-gray">panel 卡片 折叠</span>
  244. </a>
  245. </div>
  246. </li>
  247. <li class="">
  248. <div class="layui-menu-body-title">
  249. <a href="../element/table.html" tppabs="http://www.layui.com/doc/element/table.html">
  250. <span>表格 </span>
  251. <span class="layui-font-12 layui-font-gray">静态 table</span>
  252. </a>
  253. </div>
  254. </li>
  255. <li class="">
  256. <div class="layui-menu-body-title">
  257. <a href="../element/badge.html" tppabs="http://www.layui.com/doc/element/badge.html">
  258. <span>徽章 </span>
  259. <span class="layui-font-12 layui-font-gray">小圆点 小边框</span>
  260. </a>
  261. </div>
  262. </li>
  263. <li class="">
  264. <div class="layui-menu-body-title">
  265. <a href="../element/timeline.html" tppabs="http://www.layui.com/doc/element/timeline.html">
  266. <span>时间线 </span>
  267. <span class="layui-font-12 layui-font-gray">timeline</span>
  268. </a>
  269. </div>
  270. </li>
  271. <li class="">
  272. <div class="layui-menu-body-title">
  273. <a href="../element/auxiliar.html" tppabs="http://www.layui.com/doc/element/auxiliar.html">
  274. <span>辅助 </span>
  275. <span class="layui-font-12 layui-font-gray">引用 字段集 横线等</span>
  276. </a>
  277. </div>
  278. </li>
  279. </ul>
  280. </li>
  281. <li class="layui-menu-item-group" lay-options="{type: 'group', isAllowSpread: true}">
  282. <div class="layui-menu-body-title">
  283. 内置模块
  284. </div>
  285. <hr>
  286. <ul>
  287. <li class="">
  288. <div class="layui-menu-body-title">
  289. <a href="layer.html" tppabs="http://www.layui.com/doc/modules/layer.html">
  290. <span>弹出层 </span>
  291. <span class="layui-font-12 layui-font-gray">layer</span>
  292. </a>
  293. </div>
  294. </li>
  295. <li class="layui-menu-item-checked2">
  296. <div class="layui-menu-body-title">
  297. <a href="laydate.html" tppabs="http://www.layui.com/doc/modules/laydate.html">
  298. <span>日期与时间选择 </span>
  299. <span class="layui-font-12 layui-font-gray">laydate</span>
  300. </a>
  301. </div>
  302. </li>
  303. <li class="">
  304. <div class="layui-menu-body-title">
  305. <a href="laypage.html" tppabs="http://www.layui.com/doc/modules/laypage.html">
  306. <span>分页 </span>
  307. <span class="layui-font-12 layui-font-gray">laypage</span>
  308. </a>
  309. </div>
  310. </li>
  311. <li class="">
  312. <div class="layui-menu-body-title">
  313. <a href="laytpl.html" tppabs="http://www.layui.com/doc/modules/laytpl.html">
  314. <span>模板引擎 </span>
  315. <span class="layui-font-12 layui-font-gray">laytpl</span>
  316. </a>
  317. </div>
  318. </li>
  319. <li class="">
  320. <div class="layui-menu-body-title">
  321. <a href="table.html" tppabs="http://www.layui.com/doc/modules/table.html">
  322. <span>数据表格 </span>
  323. <span class="layui-font-12 layui-font-gray">table</span>
  324. </a>
  325. </div>
  326. </li>
  327. <li class="">
  328. <div class="layui-menu-body-title">
  329. <a href="form.html" tppabs="http://www.layui.com/doc/modules/form.html">
  330. <span>表单 </span>
  331. <span class="layui-font-12 layui-font-gray">form</span>
  332. </a>
  333. </div>
  334. </li>
  335. <li class="">
  336. <div class="layui-menu-body-title">
  337. <a href="upload.html" tppabs="http://www.layui.com/doc/modules/upload.html">
  338. <span>文件上传 </span>
  339. <span class="layui-font-12 layui-font-gray">upload</span>
  340. </a>
  341. </div>
  342. </li>
  343. <li class="">
  344. <div class="layui-menu-body-title">
  345. <a href="dropdown.html" tppabs="http://www.layui.com/doc/modules/dropdown.html">
  346. <span>下拉菜单 </span>
  347. <span class="layui-font-12 layui-font-gray">dropdown</span>
  348. <span class="layui-badge-dot"></span>
  349. </a>
  350. </div>
  351. </li>
  352. <li class="">
  353. <div class="layui-menu-body-title">
  354. <a href="transfer.html" tppabs="http://www.layui.com/doc/modules/transfer.html">
  355. <span>穿梭框 </span>
  356. <span class="layui-font-12 layui-font-gray">transfer</span>
  357. </a>
  358. </div>
  359. </li>
  360. <li class="">
  361. <div class="layui-menu-body-title">
  362. <a href="tree.html" tppabs="http://www.layui.com/doc/modules/tree.html">
  363. <span>树形组件 </span>
  364. <span class="layui-font-12 layui-font-gray">tree</span>
  365. </a>
  366. </div>
  367. </li>
  368. <li class="">
  369. <div class="layui-menu-body-title">
  370. <a href="colorpicker.html" tppabs="http://www.layui.com/doc/modules/colorpicker.html">
  371. <span>颜色选择器 </span>
  372. <span class="layui-font-12 layui-font-gray">colorpicker</span>
  373. </a>
  374. </div>
  375. </li>
  376. <li class="">
  377. <div class="layui-menu-body-title">
  378. <a href="element.html" tppabs="http://www.layui.com/doc/modules/element.html">
  379. <span>常用元素操作 </span>
  380. <span class="layui-font-12 layui-font-gray">element</span>
  381. </a>
  382. </div>
  383. </li>
  384. <li class="">
  385. <div class="layui-menu-body-title">
  386. <a href="slider.html" tppabs="http://www.layui.com/doc/modules/slider.html">
  387. <span>滑块 </span>
  388. <span class="layui-font-12 layui-font-gray">slider</span>
  389. </a>
  390. </div>
  391. </li>
  392. <li class="">
  393. <div class="layui-menu-body-title">
  394. <a href="rate.html" tppabs="http://www.layui.com/doc/modules/rate.html">
  395. <span>评分 </span>
  396. <span class="layui-font-12 layui-font-gray">rate</span>
  397. </a>
  398. </div>
  399. </li>
  400. <li class="">
  401. <div class="layui-menu-body-title">
  402. <a href="carousel.html" tppabs="http://www.layui.com/doc/modules/carousel.html">
  403. <span>轮播 </span>
  404. <span class="layui-font-12 layui-font-gray">carousel</span>
  405. </a>
  406. </div>
  407. </li>
  408. <li class="">
  409. <div class="layui-menu-body-title">
  410. <a href="layedit.html" tppabs="http://www.layui.com/doc/modules/layedit.html">
  411. <span>富文本编辑器 </span>
  412. <span class="layui-font-12 layui-font-gray">layedit</span>
  413. </a>
  414. </div>
  415. </li>
  416. <li class="">
  417. <div class="layui-menu-body-title">
  418. <a href="flow.html" tppabs="http://www.layui.com/doc/modules/flow.html">
  419. <span>流加载 </span>
  420. <span class="layui-font-12 layui-font-gray">flow</span>
  421. </a>
  422. </div>
  423. </li>
  424. <li class="">
  425. <div class="layui-menu-body-title">
  426. <a href="util.html" tppabs="http://www.layui.com/doc/modules/util.html">
  427. <span>工具组件 </span>
  428. <span class="layui-font-12 layui-font-gray">util</span>
  429. </a>
  430. </div>
  431. </li>
  432. <li class="">
  433. <div class="layui-menu-body-title">
  434. <a href="code.html" tppabs="http://www.layui.com/doc/modules/code.html">
  435. <span>代码高亮显示 </span>
  436. <span class="layui-font-12 layui-font-gray">code</span>
  437. </a>
  438. </div>
  439. </li>
  440. </ul>
  441. </li>
  442. </ul>
  443. </div>
  444. <div class="layui-hide-v"> - </div>
  445. </div>
  446. <div class="layui-col-md9 site-content">
  447. <h1 class="site-h1"><i class="layui-icon">&#xe637;</i> 日期和时间组件文档 - layui.laydate</h1>
  448. <blockquote class="layui-elem-quote">
  449. 如你所见,layDate 在 layui 2.0 的版本中迎来一次重生。无论曾经它给你带来过多么糟糕的体验,从今往后,所有的旧坑都将弥合。全面重写的 layDate 包含了大量的更新,其中主要以:<em>年选择器</em>、<em>年月选择器</em>、<em>日期选择器</em>、<em>时间选择器</em>、<em>日期时间选择器</em> 五种类型的选择方式为基本核心,并且均支持范围选择(即双控件)。内置强劲的自定义日期格式解析和合法校正机制,含中文版和国际版,主题简约却又不失灵活多样。由于内部采用的是零依赖的原生 JavaScript 编写,因此又可作为独立组件使用。毫无疑问,这是 layui 的虔心之作。
  450. </blockquote>
  451. <blockquote class="layui-elem-quote site-text">
  452. 模块加载名称:<em>laydate</em>,独立版本:<a href="../../laydate/index.html" tppabs="http://www.layui.com/laydate/" target="_blank">http://www.layui.com/laydate/</a>
  453. </blockquote>
  454. <fieldset class="layui-elem-field layui-field-title site-title">
  455. <legend><a name="use">快速使用</a></legend>
  456. </fieldset>
  457. <div class="site-text">
  458. <p>和 layer 一样,你可以在 layui 中使用 layDate,也可直接使用 layDate 独立版,请按照你的实际需求来选择。</p>
  459. <table class="layui-table">
  460. <thead>
  461. <tr>
  462. <th style="width: 150px;">场景</th>
  463. <th style="width: 450px;">用前准备</th>
  464. <th>调用方式</th>
  465. </tr>
  466. </thead>
  467. <tbody>
  468. <tr>
  469. <td>1. 在 layui 模块中使用</td>
  470. <td>
  471. 下载 layui 后,引入<em>layui.css</em>和<em>layui.js</em>即可
  472. </td>
  473. <td>
  474. 通过<em>layui.use('laydate', callback)</em>加载模块后,再调用方法
  475. </td>
  476. </tr>
  477. <tr>
  478. <td>2. 作为独立组件使用</td>
  479. <td>
  480. 去 <a href="../../laydate/index.html" tppabs="http://www.layui.com/laydate/" target="_blank">layDate</a> 独立版本官网下载组件包,引入 laydate.js 即可
  481. </td>
  482. <td>
  483. 直接调用方法使用
  484. </td>
  485. </tr>
  486. <tr>
  487. </tbody>
  488. </table>
  489. <div class="layui-inline">
  490. 这是一个最简单的示例:
  491. </div>
  492. <div class="layui-inline" style="width: 274px;">
  493. <input type="text" class="layui-input" id="test1" placeholder="yyyy-MM-dd">
  494. </div>
  495. <div class="layui-inline" style="margin-left: 15px;">对应的代码如下:</div>
  496. <pre class="layui-code" lay-title="在 layui 模块中使用">
  497. &lt;!DOCTYPE html&gt;
  498. &lt;html&gt;
  499. &lt;head&gt;
  500. &lt;meta charset=&quot;utf-8&quot;&gt;
  501. &lt;title&gt;layDate快速使用&lt;/title&gt;
  502. &lt;link rel=&quot;stylesheet&quot; href=&quot;/static/build/layui.css&quot; media=&quot;all&quot;&gt;
  503. &lt;/head&gt;
  504. &lt;body&gt;
  505. &lt;div class="layui-inline"&gt; &lt;!-- 注意:这一层元素并不是必须的 --&gt;
  506. &lt;input type="text" class="layui-input" id="test1"&gt;
  507. &lt;/div&gt;
  508. &lt;script src=&quot;/static/build/layui.js&quot;&gt;&lt;/script&gt;
  509. &lt;script&gt;
  510. layui.use(&#x27;laydate&#x27;, function(){
  511. var laydate = layui.laydate;
  512. //执行一个laydate实例
  513. laydate.render({
  514. elem: '#test1' //指定元素
  515. });
  516. });
  517. &lt;/script&gt;
  518. &lt;/body&gt;
  519. &lt;/html&gt;
  520. </pre>
  521. <pre class="layui-code" lay-title="作为独立组件使用">
  522. &lt;!DOCTYPE html&gt;
  523. &lt;html&gt;
  524. &lt;head&gt;
  525. &lt;meta charset=&quot;utf-8&quot;&gt;
  526. &lt;title&gt;使用 layDate 独立版&lt;/title&gt;
  527. &lt;/head&gt;
  528. &lt;body&gt;
  529. &lt;input type="text" id="test1"&gt;
  530. &lt;script src=&quot;laydate.js&quot;&gt;&lt;/script&gt;
  531. &lt;script&gt;
  532. //执行一个laydate实例
  533. laydate.render({
  534. elem: '#test1' //指定元素
  535. });
  536. &lt;/script&gt;
  537. &lt;/body&gt;
  538. &lt;/html&gt;
  539. </pre>
  540. <p>除了在组件加载方式有一些小小的不同,其它都完全类似</p>
  541. </div>
  542. <fieldset class="layui-elem-field layui-field-title site-title">
  543. <legend><a name="options">基础参数选项</a></legend>
  544. </fieldset>
  545. <div class="site-text">
  546. <p>通过核心方法:<em>laydate.render(options)</em> 来设置基础参数,也可以通过方法:<em>laydate.set(options)</em> 来设定全局基础参数.</p>
  547. </div>
  548. <fieldset class="layui-elem-field layui-field-title site-title">
  549. <legend><a name="elem">elem - 绑定元素</a></legend>
  550. </fieldset>
  551. <div class="site-text">
  552. <p>类型:<em>String/DOM</em>,默认值:<em>无</em></p>
  553. <p>必填项,用于绑定执行日期渲染的元素,值一般为选择器,或DOM对象</p>
  554. <pre class="layui-code">
  555. laydate.render({
  556. elem: '#test' //或 elem: document.getElementById('test')、elem: lay('#test') 等
  557. });
  558. </pre>
  559. </div>
  560. <fieldset class="layui-elem-field layui-field-title site-title">
  561. <legend><a name="type">type - 控件选择类型</a></legend>
  562. </fieldset>
  563. <div class="site-text">
  564. <p>类型:<em>String</em>,默认值:<em>date</em></p>
  565. <p>用于单独提供不同的选择器类型,可选值如下表:</p>
  566. <table class="layui-table">
  567. <colgroup>
  568. <col width="100">
  569. <col width="150">
  570. <col>
  571. </colgroup>
  572. <thead>
  573. <tr>
  574. <th>type可选值</th>
  575. <th>名称</th>
  576. <th>用途</th>
  577. </tr>
  578. </thead>
  579. <tbody>
  580. <tr>
  581. <td>year</td>
  582. <td>年选择器</td>
  583. <td>只提供年列表选择</td>
  584. </tr>
  585. <tr>
  586. <td>month</td>
  587. <td>年月选择器</td>
  588. <td>只提供年、月选择</td>
  589. </tr>
  590. <tr>
  591. <td>date</td>
  592. <td>日期选择器</td>
  593. <td>可选择:年、月、日。type默认值,一般可不填</td>
  594. </tr>
  595. <tr>
  596. <td>time</td>
  597. <td>时间选择器</td>
  598. <td>只提供时、分、秒选择</td>
  599. </tr>
  600. <tr>
  601. <td>datetime</td>
  602. <td>日期时间选择器</td>
  603. <td>可选择:年、月、日、时、分、秒</td>
  604. </tr>
  605. </tbody>
  606. </table>
  607. <pre class="layui-code">
  608. //年选择器
  609. laydate.render({
  610. elem: '#test'
  611. ,type: 'year'
  612. });
  613. //年月选择器
  614. laydate.render({
  615. elem: '#test'
  616. ,type: 'month'
  617. });
  618. //日期选择器
  619. laydate.render({
  620. elem: '#test'
  621. //,type: 'date' //默认,可不填
  622. });
  623. //时间选择器
  624. laydate.render({
  625. elem: '#test'
  626. ,type: 'time'
  627. });
  628. //日期时间选择器
  629. laydate.render({
  630. elem: '#test'
  631. ,type: 'datetime'
  632. });
  633. </pre>
  634. </div>
  635. <fieldset class="layui-elem-field layui-field-title site-title">
  636. <legend><a name="range">range - 开启左右面板范围选择</a></legend>
  637. </fieldset>
  638. <div class="site-text">
  639. <p>类型:<em>Boolean/String/Array</em>,默认值:<em>false</em></p>
  640. <p>如果设置 <em>true</em>,将默认采用 “ - ” 分割。 你也可以直接设置 <em>分割字符</em>。五种选择器类型均支持左右面板的范围选择。</p>
  641. <pre class="layui-code" lay-height="390px">
  642. //日期范围选择
  643. laydate.render({
  644. elem: '#test'
  645. ,range: true //或 range: '~' 来自定义分割字符
  646. });
  647. //日期时间范围选择
  648. laydate.render({
  649. elem: '#test'
  650. ,type: 'datetime'
  651. ,range: true
  652. });
  653. //时间范围选择
  654. laydate.render({
  655. elem: '#test'
  656. ,type: 'time'
  657. ,range: true
  658. });
  659. //年范围选择
  660. laydate.render({
  661. elem: '#test'
  662. ,type: 'year'
  663. ,range: true
  664. });
  665. //年月范围选择
  666. laydate.render({
  667. elem: '#test'
  668. ,type: 'month'
  669. ,range: true
  670. });
  671. </pre>
  672. <p>如果您要将开始时间和结束时间分开,那么还可以将 range 参数设置为数组,如:</p>
  673. <pre class="layui-code">
  674. &lt;div class=&quot;layui-form-item&quot;&gt;
  675. &lt;div class=&quot;layui-inline&quot;&gt;
  676. &lt;label class=&quot;layui-form-label&quot;&gt;日期范围&lt;/label&gt;
  677. &lt;div class=&quot;layui-inline&quot; id=&quot;test-range&quot;&gt;
  678. &lt;div class=&quot;layui-input-inline&quot;&gt;
  679. &lt;input type=&quot;text&quot; id=&quot;startDate&quot; class=&quot;layui-input&quot; placeholder=&quot;开始日期&quot;&gt;
  680. &lt;/div&gt;
  681. &lt;div class=&quot;layui-form-mid&quot;&gt;-&lt;/div&gt;
  682. &lt;div class=&quot;layui-input-inline&quot;&gt;
  683. &lt;input type=&quot;text&quot; id=&quot;endDate&quot; class=&quot;layui-input&quot; placeholder=&quot;结束日期&quot;&gt;
  684. &lt;/div&gt;
  685. &lt;/div&gt;
  686. &lt;/div&gt;
  687. &lt;/div&gt;
  688. &lt;script&gt;
  689. laydate.render({
  690. elem: '#test-range' //开始时间和结束时间所在 input 框的父选择器
  691. //设置开始日期、日期日期的 input 选择器
  692. ,range: ['#startDate', '#endDate'] //数组格式为 layui 2.6.6 开始新增
  693. });
  694. &lt;/script&gt;
  695. </pre>
  696. </div>
  697. <fieldset class="layui-elem-field layui-field-title site-title">
  698. <legend><a name="format">format - 自定义格式</a></legend>
  699. </fieldset>
  700. <div class="site-text">
  701. <p>类型:<em>String</em>,默认值:<em>yyyy-MM-dd</em></p>
  702. <p>通过日期时间各自的格式符和长度,来设定一个你所需要的日期格式。layDate 支持的格式如下:</p>
  703. <table class="layui-table">
  704. <colgroup>
  705. <col width="100">
  706. <col>
  707. </colgroup>
  708. <thead>
  709. <tr>
  710. <th>格式符</th>
  711. <th>说明</th>
  712. </tr>
  713. </thead>
  714. <tbody>
  715. <tr>
  716. <td>yyyy</td>
  717. <td>年份,至少四位数。如果不足四位,则前面补零</td>
  718. </tr>
  719. <tr>
  720. <td>y</td>
  721. <td>年份,不限制位数,即不管年份多少位,前面均不补零</td>
  722. </tr>
  723. <tr>
  724. <td>MM</td>
  725. <td>月份,至少两位数。如果不足两位,则前面补零。</td>
  726. </tr>
  727. <tr>
  728. <td>M</td>
  729. <td>月份,允许一位数。</td>
  730. </tr>
  731. <tr>
  732. <td>dd</td>
  733. <td>日期,至少两位数。如果不足两位,则前面补零。</td>
  734. </tr>
  735. <tr>
  736. <td>d</td>
  737. <td>日期,允许一位数。</td>
  738. </tr>
  739. <tr>
  740. <td>HH</td>
  741. <td>小时,至少两位数。如果不足两位,则前面补零。</td>
  742. </tr>
  743. <tr>
  744. <td>H</td>
  745. <td>小时,允许一位数。</td>
  746. </tr>
  747. <tr>
  748. <td>mm</td>
  749. <td>分钟,至少两位数。如果不足两位,则前面补零。</td>
  750. </tr>
  751. <tr>
  752. <td>m</td>
  753. <td>分钟,允许一位数。</td>
  754. </tr>
  755. <tr>
  756. <td>ss</td>
  757. <td>秒数,至少两位数。如果不足两位,则前面补零。</td>
  758. </tr>
  759. <tr>
  760. <td>s</td>
  761. <td>秒数,允许一位数。</td>
  762. </tr>
  763. </tbody>
  764. </table>
  765. <p>通过上述不同的格式符组合成一段日期时间字符串,可任意排版,如下所示:</p>
  766. <table class="layui-table">
  767. <colgroup>
  768. <col width="260">
  769. <col>
  770. </colgroup>
  771. <thead>
  772. <tr>
  773. <th>格式</th>
  774. <th>示例值</th>
  775. </tr>
  776. </thead>
  777. <tbody>
  778. <tr>
  779. <td>yyyy-MM-dd HH:mm:ss</td>
  780. <td>2017-08-18 20:08:08</td>
  781. </tr>
  782. <tr>
  783. <td>yyyy年MM月dd日 HH时mm分ss秒</td>
  784. <td>2017年08月18日 20时08分08秒</td>
  785. </tr>
  786. <tr>
  787. <td>yyyyMMdd</td>
  788. <td>20170818</td>
  789. </tr>
  790. <tr>
  791. <td>dd/MM/yyyy</td>
  792. <td>18/08/2017</td>
  793. </tr>
  794. <tr>
  795. <td>yyyy年M月</td>
  796. <td>2017年8月</td>
  797. </tr>
  798. <tr>
  799. <td>M月d日</td>
  800. <td>8月18日</td>
  801. </tr>
  802. <tr>
  803. <td>北京时间:HH点mm分</td>
  804. <td>北京时间:20点08分</td>
  805. </tr>
  806. <tr>
  807. <td>yyyy年的M月某天晚上,大概H点</td>
  808. <td>2017年的8月某天晚上,大概20点</td>
  809. </tr>
  810. </tbody>
  811. </table>
  812. <pre class="layui-code">
  813. //自定义日期格式
  814. laydate.render({
  815. elem: '#test'
  816. ,format: 'yyyy年MM月dd日' //可任意组合
  817. });
  818. </pre>
  819. </div>
  820. <fieldset class="layui-elem-field layui-field-title site-title">
  821. <legend><a name="value">value - 初始值</a></legend>
  822. </fieldset>
  823. <div class="site-text">
  824. <p>类型:<em>String</em>,默认值:<em>new Date()</em></p>
  825. <p>支持传入符合format参数设定的日期格式字符,或者 new Date()</p>
  826. <pre class="layui-code">
  827. //传入符合format格式的字符给初始值
  828. laydate.render({
  829. elem: '#test'
  830. ,value: '2018-08-18' //必须遵循format参数设定的格式
  831. });
  832. //传入Date对象给初始值
  833. laydate.render({
  834. elem: '#test'
  835. ,value: new Date(1534766888000) //参数即为:2018-08-20 20:08:08 的时间戳
  836. });
  837. </pre>
  838. </div>
  839. <fieldset class="layui-elem-field layui-field-title site-title">
  840. <legend><a name="isInitValue">isInitValue - 初始值填充</a></legend>
  841. </fieldset>
  842. <div class="site-text">
  843. <p>类型:<em>Boolean</em>,默认值:<em>true</em></p>
  844. <p>用于控制是否自动向元素填充初始值(需配合 value 参数使用)</p>
  845. <pre class="layui-code">
  846. laydate.render({
  847. elem: '#test'
  848. ,value: '2017-09-10'
  849. ,isInitValue: false //是否允许填充初始值,默认为 true
  850. });
  851. </pre>
  852. <blockquote class="layui-elem-quote layui-quote-nm" style="color: #FF5722;">注意:该参数为 layui 2.3.0 新增。</blockquote>
  853. </div>
  854. <fieldset class="layui-elem-field layui-field-title site-title">
  855. <legend><a name="isPreview">isPreview - 是否开启选择值预览</a></legend>
  856. </fieldset>
  857. <div class="site-text">
  858. <p>类型:<em>Boolean</em>,默认值:<em>true</em></p>
  859. <p>用于控制是否显示当前结果的预览(type 为 datetime 时不开启)</p>
  860. <pre class="layui-code">
  861. laydate.render({
  862. elem: '#test'
  863. ,isPreview: false //禁用面板左下角选择值的预览,默认 true
  864. });
  865. </pre>
  866. <blockquote class="layui-elem-quote layui-quote-nm layui-font-red">
  867. 注意:该参数为 layui 2.6.6 新增。
  868. </blockquote>
  869. </div>
  870. <fieldset class="layui-elem-field layui-field-title site-title">
  871. <legend><a name="minmax">min/max - 最小/大范围内的日期时间值</a></legend>
  872. </fieldset>
  873. <div class="site-text">
  874. <p>类型:<em>string</em>,默认值:<em>min: '1900-1-1'</em>、<em>max: '2099-12-31'</em></p>
  875. <p>
  876. 设定有限范围内的日期或时间值,<em>不在范围内的将不可选中</em>。这两个参数的赋值非常灵活,主要有以下几种情况:
  877. </p>
  878. <table class="layui-table">
  879. <tbody>
  880. <tr>
  881. <td>1.</td>
  882. <td>如果值为字符类型,则:<em>年月日必须用 -(中划线)分割</em>、<em>时分秒必须用 :(半角冒号)号分割</em>。这里并非遵循 format 设定的格式</td>
  883. </tr>
  884. <tr>
  885. <td>2.</td>
  886. <td>如果值为整数类型,且数字<86400000,则数字代表天数,如:min: -7,即代表最小日期在7天前,正数代表若干天后</td>
  887. </tr>
  888. <tr>
  889. <td>3.</td>
  890. <td>如果值为整数类型,且数字 ≥ 86400000,则数字代表时间戳,如:max: 4073558400000,即代表最大日期在:公元3000年1月1日</td>
  891. </tr>
  892. </tbody>
  893. </table>
  894. <pre class="layui-code" lay-title="示例">
  895. //日期有效范围只限定在:2017年
  896. laydate.render({
  897. elem: '#test'
  898. ,min: '2017-1-1'
  899. ,max: '2017-12-31'
  900. });
  901. //日期有效范围限定在:过去一周到未来一周
  902. laydate.render({
  903. elem: '#test'
  904. ,min: -7 //7天前
  905. ,max: 7 //7天后
  906. });
  907. //日期时间有效范围的设定:
  908. laydate.render({
  909. elem: '#test'
  910. ,type: 'datetime'
  911. ,min: '2017-8-11 12:30:00'
  912. ,max: '2017-8-18 12:30:00'
  913. });
  914. //时间有效范围设定在: 上午九点半到下午五点半
  915. laydate.render({
  916. elem: '#test'
  917. ,type: 'time'
  918. ,min: '09:30:00'
  919. ,max: '17:30:00'
  920. });
  921. </pre>
  922. <p>毫不保留地说,min和max参数是两个非常强大的存在,合理运用,可帮助用户在日期与时间的选择上带来更为友好的约束与体验。</p>
  923. </div>
  924. <fieldset class="layui-elem-field layui-field-title site-title">
  925. <legend><a name="trigger">trigger - 自定义弹出控件的事件</a></legend>
  926. </fieldset>
  927. <div class="site-text">
  928. <p>类型:<em>String</em>,默认值:<em>focus</em>,如果绑定的元素非输入框,则默认事件为:click</p>
  929. <pre class="layui-code">
  930. //自定义事件
  931. laydate.render({
  932. elem: '#test'
  933. ,trigger: 'click' //采用click弹出
  934. });
  935. </pre>
  936. </div>
  937. <fieldset class="layui-elem-field layui-field-title site-title">
  938. <legend><a name="show">show - 默认显示</a></legend>
  939. </fieldset>
  940. <div class="site-text">
  941. <p>类型:<em>Boolean</em>,默认值:<em>false</em></p>
  942. <p>如果设置: <em>true</em>,则控件默认显示在绑定元素的区域。通常用于外部事件调用控件,如:</p>
  943. <pre class="layui-code">
  944. //默认显示
  945. laydate.render({
  946. elem: '#test'
  947. ,show: true //直接显示
  948. });
  949. //外部事件调用
  950. lay('#test1').on('click', function(e){ //假设 test1 是一个按钮
  951. laydate.render({
  952. elem: '#test'
  953. ,show: true //直接显示
  954. ,closeStop: '#test1' //这里代表的意思是:点击 test1 所在元素阻止关闭事件冒泡。如果不设定,则无法弹出控件
  955. });
  956. });
  957. </pre>
  958. </div>
  959. <fieldset class="layui-elem-field layui-field-title site-title">
  960. <legend><a name="position">position - 定位方式</a></legend>
  961. </fieldset>
  962. <div class="site-text">
  963. <p>类型:<em>String</em>,默认值:<em>absolute</em></p>
  964. <p>用于设定控件的定位方式,有以下三种可选值:</p>
  965. <table class="layui-table">
  966. <colgroup>
  967. <col width="150">
  968. <col>
  969. </colgroup>
  970. <thead>
  971. <tr>
  972. <th>position 可选值</th>
  973. <th>说明</th>
  974. </tr>
  975. </thead>
  976. <tbody>
  977. <tr>
  978. <td>abolute</td>
  979. <td>绝对定位,始终吸附在绑定元素周围。默认值</td>
  980. </tr>
  981. <tr>
  982. <td>fixed</td>
  983. <td>固定定位,初始吸附在绑定元素周围,不随浏览器滚动条所左右。<em>一般用于在固定定位的弹层中使用。</em></td>
  984. </tr>
  985. <tr>
  986. <td>static</td>
  987. <td>
  988. 静态定位,控件将直接嵌套在指定容器中。
  989. <br>注意:<em>请勿与 show 参数的概念搞混淆。show为 true 时,控件仍然是采用绝对或固定定位。而这里是直接嵌套显示</em>
  990. </td>
  991. </tr>
  992. </tbody>
  993. </table>
  994. <p>下面是一个直接嵌套显示的例子:<span id="test3"></span></p>
  995. <div class="layui-inline" id="test2" style="margin-right: 15px;"></div>
  996. <div class="layui-inline" style="width: 600px;">
  997. <pre class="layui-code" style="height:322px">
  998. 【HTML】
  999. &lt;span id="testView">&lt;/span>
  1000. &lt;div id="test2">&lt;/div>
  1001. 【JS】:
  1002. //嵌套在指定容器中
  1003. laydate.render({
  1004. elem: '#test2'
  1005. ,position: 'static'
  1006. ,change: function(value, date){ //监听日期被切换
  1007. lay('#testView').html(value);
  1008. }
  1009. });
  1010. </pre>
  1011. </div>
  1012. </div>
  1013. <fieldset class="layui-elem-field layui-field-title site-title">
  1014. <legend><a name="zIndex">zIndex - 层叠顺序</a></legend>
  1015. </fieldset>
  1016. <div class="site-text">
  1017. <p>类型:<em>Number</em>,默认值:<em>66666666</em></p>
  1018. <p>一般用于解决与其它元素的互相被遮掩的问题。如果 position 参数设为 static 时,该参数无效。</p>
  1019. <pre class="layui-code">
  1020. //设定控件的层叠顺序
  1021. laydate.render({
  1022. elem: '#test'
  1023. ,zIndex: 99999999
  1024. });
  1025. </pre>
  1026. </div>
  1027. <fieldset class="layui-elem-field layui-field-title site-title">
  1028. <legend><a name="showBottom">showBottom - 是否显示底部栏</a></legend>
  1029. </fieldset>
  1030. <div class="site-text">
  1031. <p>类型:<em>Boolean</em>,默认值:<em>true</em></p>
  1032. <p>如果设置 <em>false</em>,将不会显示控件的底部栏区域</p>
  1033. <pre class="layui-code">
  1034. //不显示底部栏
  1035. laydate.render({
  1036. elem: '#test'
  1037. ,showBottom: false
  1038. });
  1039. </pre>
  1040. </div>
  1041. <fieldset class="layui-elem-field layui-field-title site-title">
  1042. <legend><a name="btns">btns - 工具按钮</a></legend>
  1043. </fieldset>
  1044. <div class="site-text">
  1045. <p>类型:<em>Array</em>,默认值:<em>['clear', 'now', 'confirm']</em></p>
  1046. <p>右下角显示的按钮,会按照数组顺序排列,内置可识别的值有:clear、now、confirm</p>
  1047. <pre class="layui-code">
  1048. //只显示清空和确认
  1049. laydate.render({
  1050. elem: '#test'
  1051. ,btns: ['clear', 'confirm']
  1052. });
  1053. </pre>
  1054. </div>
  1055. <fieldset class="layui-elem-field layui-field-title site-title">
  1056. <legend><a name="lang">lang - 语言</a></legend>
  1057. </fieldset>
  1058. <div class="site-text">
  1059. <p>类型:<em>String</em>,默认值:<em>cn</em></p>
  1060. <p>我们内置了两种语言版本:<em>cn</em>(中文版)、<em>en</em>(国际版,即英文版)。这里并没有开放自定义文字,是为了避免繁琐的配置。</p>
  1061. <pre class="layui-code">
  1062. //国际版
  1063. laydate.render({
  1064. elem: '#test'
  1065. ,lang: 'en'
  1066. });
  1067. </pre>
  1068. </div>
  1069. <fieldset class="layui-elem-field layui-field-title site-title">
  1070. <legend><a name="theme">theme - 主题</a></legend>
  1071. </fieldset>
  1072. <div class="site-text">
  1073. <p>类型:<em>String</em>,默认值:<em>default</em></p>
  1074. <p>我们内置了多种主题,theme的可选值有:<em>default</em>(默认简约)、<em>molv</em>(墨绿背景)、<em>#颜色值</em>(自定义颜色背景)、<em>grid</em>(格子主题)</p>
  1075. <pre class="layui-code">
  1076. //墨绿背景主题
  1077. laydate.render({
  1078. elem: '#test'
  1079. ,theme: 'molv'
  1080. });
  1081. //自定义背景色主题 - 非常实用
  1082. laydate.render({
  1083. elem: '#test'
  1084. ,theme: '#393D49'
  1085. });
  1086. //格子主题
  1087. laydate.render({
  1088. elem: '#test'
  1089. ,theme: 'grid'
  1090. });
  1091. </pre>
  1092. <p>另外,你还可以传入其它字符,如:theme: 'xxx',那么控件将会多出一个 <em>class="laydate-theme-xxx"</em> 的CSS类,以便于你单独定制主题。</p>
  1093. </div>
  1094. <fieldset class="layui-elem-field layui-field-title site-title">
  1095. <legend><a name="calendar">calendar - 是否显示公历节日</a></legend>
  1096. </fieldset>
  1097. <div class="site-text">
  1098. <p>类型:<em>Boolean</em>,默认值:<em>false</em></p>
  1099. <p>我们内置了一些我国通用的公历重要节日,通过设置 <em>true</em> 来开启。国际版不会显示。</p>
  1100. <pre class="layui-code">
  1101. //允许显示公历节日
  1102. laydate.render({
  1103. elem: '#test'
  1104. ,calendar: true
  1105. });
  1106. </pre>
  1107. </div>
  1108. <fieldset class="layui-elem-field layui-field-title site-title">
  1109. <legend><a name="mark">mark - 标注重要日子</a></legend>
  1110. </fieldset>
  1111. <div class="site-text">
  1112. <p>类型:<em>Object</em>,默认值:<em>无</em></p>
  1113. <p>calendar 参数所代表的公历节日更多情况下是一个摆设。因此,我们还需要自定义标注重要日子,比如结婚纪念日?日程等?它分为以下两种:</p>
  1114. <table class="layui-table">
  1115. <colgroup>
  1116. <col width="150">
  1117. <col>
  1118. <col>
  1119. </colgroup>
  1120. <thead>
  1121. <tr>
  1122. <th>标注</th>
  1123. <th>格式</th>
  1124. <th>说明</th>
  1125. </tr>
  1126. </thead>
  1127. <tbody>
  1128. <tr>
  1129. <td>每年的日期</td>
  1130. <td>{'0-9-18': '国耻'}</td>
  1131. <td>0 即代表每一年</td>
  1132. </tr>
  1133. <tr>
  1134. <td>每月的日期</td>
  1135. <td>{'0-0-15': '中旬'}</td>
  1136. <td>0-0 即代表每年每月(layui 2.1.1/layDate 5.0.4 新增)</td>
  1137. </tr>
  1138. <tr>
  1139. <td>特定的日期</td>
  1140. <td>{'2017-8-21': '发布')</td>
  1141. <td>-</td>
  1142. </tr>
  1143. </tbody>
  1144. </table>
  1145. <p>可同时设定多个,如:</p>
  1146. <pre class="layui-code">
  1147. //标注重要日子
  1148. var ins1 = laydate.render({
  1149. elem: '#test'
  1150. ,mark: {
  1151. '0-10-14': '生日'
  1152. ,'0-12-31': '跨年' //每年12月31日
  1153. ,'0-0-10': '工资' //每个月10号
  1154. ,'2017-8-15': '' //具体日期
  1155. ,'2017-8-20': '预发' //如果为空字符,则默认显示数字+徽章
  1156. ,'2017-8-21': '发布'
  1157. }
  1158. ,done: function(value, date){
  1159. if(date.year === 2017 && date.month === 8 && date.date === 15){ //点击2017年8月15日,弹出提示语
  1160. ins1.hint('中国人民抗日战争胜利72周年');
  1161. }
  1162. }
  1163. });
  1164. </pre>
  1165. <p>非常实用的存在,是时候利用它制作你的日程表了。</p>
  1166. </div>
  1167. <fieldset class="layui-elem-field layui-field-title site-title">
  1168. <legend><a name="onready">控件初始打开的回调</a></legend>
  1169. </fieldset>
  1170. <div class="site-text">
  1171. <p>控件在打开时触发,回调返回一个参数:<em>初始的日期时间对象</em></p>
  1172. <pre class="layui-code">
  1173. laydate.render({
  1174. elem: '#test'
  1175. ,ready: function(date){
  1176. console.log(date); //得到初始的日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
  1177. }
  1178. });
  1179. </pre>
  1180. </div>
  1181. <fieldset class="layui-elem-field layui-field-title site-title">
  1182. <legend><a name="onchange">日期时间被切换后的回调</a></legend>
  1183. </fieldset>
  1184. <div class="site-text">
  1185. <p>年月日时间被切换时都会触发。回调返回三个参数,分别代表:<em>生成的值</em>、<em>日期时间对象</em>、<em>结束的日期时间对象</em></p>
  1186. <pre class="layui-code">
  1187. laydate.render({
  1188. elem: '#test'
  1189. ,change: function(value, date, endDate){
  1190. console.log(value); //得到日期生成的值,如:2017-08-18
  1191. console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
  1192. console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。
  1193. }
  1194. });
  1195. </pre>
  1196. </div>
  1197. <fieldset class="layui-elem-field layui-field-title site-title">
  1198. <legend><a name="ondone">控件选择完毕后的回调</a></legend>
  1199. </fieldset>
  1200. <div class="site-text">
  1201. <p>点击日期、清空、现在、确定均会触发。回调返回三个参数,分别代表:<em>生成的值</em>、<em>日期时间对象</em>、<em>结束的日期时间对象</em></p>
  1202. <pre class="layui-code">
  1203. laydate.render({
  1204. elem: '#test'
  1205. ,done: function(value, date, endDate){
  1206. console.log(value); //得到日期生成的值,如:2017-08-18
  1207. console.log(date); //得到日期时间对象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
  1208. console.log(endDate); //得结束的日期时间对象,开启范围选择(range: true)才会返回。对象成员同上。
  1209. }
  1210. });
  1211. </pre>
  1212. </div>
  1213. <fieldset class="layui-elem-field layui-field-title site-title">
  1214. <legend><a name="hint">弹出控件提示</a></legend>
  1215. </fieldset>
  1216. <div class="site-text">
  1217. <p>事实上,执行核心方法 <em>laydate.render(options)</em> 会返回一个当前实例对象。其中包含一些成员属性和方法,比如:hint方法</p>
  1218. <pre class="layui-code">
  1219. var ins1 = laydate.render({
  1220. elem: '#test'
  1221. ,change: function(value, date, endDate){
  1222. ins1.hint(value); //在控件上弹出value值
  1223. }
  1224. });
  1225. </pre>
  1226. </div>
  1227. <fieldset class="layui-elem-field layui-field-title site-title">
  1228. <legend><a name="path">配置基础路径</a></legend>
  1229. </fieldset>
  1230. <div class="site-text">
  1231. <p>如果你不是采用 layui 或者普通 script 标签方式加载的 laydate.js,而是采用 requirejs 等其它方式引用 laydate,那么你需要设置基础路径,以便 laydate.css 完成加载。</p>
  1232. <pre class="layui-code">
  1233. laydate.path = '/static/xxx/'; //laydate.js 所在目录
  1234. //配置好路径后,再调用
  1235. laydate.render(options);
  1236. </pre>
  1237. <p>除上述之外,如果您采用的是独立的 laydate,那么你还可以在动态加载 <code>laydate</code>之前预先定义一个我们约定好的全局对象:</p>
  1238. <pre class="layui-code">
  1239. &lt;script&gt;
  1240. var LAYUI_GLOBAL = {
  1241. laydate_dir: '/res/laydate/' //laydate 所在目录(laydate 5.3.0 开始新增)
  1242. };
  1243. &lt;/script&gt;
  1244. </pre>
  1245. <blockquote class="layui-elem-quote layui-text">
  1246. 提示 1:上述只针对独立版 laydate,其 LAYUI_GLOBAL 设定的 laydate_dir 优先级高于 laydate.path;
  1247. <br>提示 2:如果是 layui 加载的 laydate,可以无视上述所有的目录设定。前置工作都会在 layui 内部完成。
  1248. </blockquote>
  1249. </div>
  1250. <fieldset class="layui-elem-field layui-field-title site-title">
  1251. <legend><a name="other">其它方法</a></legend>
  1252. </fieldset>
  1253. <table class="layui-table">
  1254. <colgroup>
  1255. <col width="300">
  1256. <col>
  1257. </colgroup>
  1258. <thead>
  1259. <tr>
  1260. <th>方法名</th>
  1261. <th>备注</th>
  1262. </tr>
  1263. </thead>
  1264. <tbody>
  1265. <tr>
  1266. <td>laydate.getEndDate(month, year)</td>
  1267. <td>
  1268. 获取指定年月的最后一天,month默认为当前月,year默认为当前年。如:
  1269. <br>var endDate1 = laydate.getEndDate(10); //得到31
  1270. <br>var endDate2 = laydate.getEndDate(2, 2080); //得到29
  1271. </td>
  1272. </tr>
  1273. </tbody>
  1274. </table>
  1275. <fieldset class="layui-elem-field layui-field-title site-title">
  1276. <legend><a name="other">结语</a></legend>
  1277. </fieldset>
  1278. <div class="site-text">
  1279. <p>layDate最早发布于2014年6月,但当时只迭代了一个版本,就再也没有更新。而时至今日,作为 layui 2.0 的核心组成之一,layDate 再度强势复活,不禁让人感慨万千!layDate曾被我定义为:“最失败的一个组件”,被我无情搁置了整整三年。现在,是时候卸下这个标签了。</p>
  1280. </div>
  1281. <div class="layui-elem-quote">
  1282. <p>layui - 在每一个细节中,用心与你沟通</p>
  1283. </div>
  1284. </div>
  1285. </div>
  1286. <div class="layui-footer footer footer-doc">
  1287. <p>
  1288. Copyright &copy; 2021 <a href="../../index.html" tppabs="http://www.layui.com/">「本站仅为 layui 文档保留的镜像站点,与官方无关」</a> MIT Licensed</p>
  1289. <p>
  1290. <a href="../../about/disclaimer.html" tppabs="http://www.layui.com/about/disclaimer.html" target="_blank">免责声明</a>
  1291. <a href="../../about/relatedlinks.html" tppabs="http://www.layui.com/about/relatedlinks.html" target="_blank">友链</a>
  1292. <a href="javascript:;" site-event="weixinmp">公众号</a>
  1293. <a target="_blank" href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=00000000000000" rel="nofollow">
  1294. <img src="/public/upload/2021_8/168_1628847893037_87773.png" tppabs="http://cdn.layui.com/upload/2021_8/168_1628847893037_87773.png">
  1295. 公网安备 00000000000000号
  1296. </a>
  1297. <a href="https://beian.miit.gov.cn/" target="_blank" rel="nofollow">ICP备00000000号</a>
  1298. </p>
  1299. <div class="site-union">
  1300. <p class="site-union-desc">
  1301. <span>
  1302. 感谢以下平台提供云加速支持
  1303. </span>
  1304. </p>
  1305. </div>
  1306. </div>
  1307. <script>
  1308. window.global = {
  1309. pageType: 'doc'
  1310. ,preview: function(){
  1311. var preview = document.getElementById('LAY_preview');
  1312. return preview ? preview.innerHTML : '';
  1313. }()
  1314. };
  1315. </script>
  1316. <div class="site-tree-mobile layui-hide">
  1317. <i class="layui-icon layui-icon-spread-left"></i>
  1318. </div>
  1319. <div class="site-mobile-shade"></div>
  1320. <script src="/public/layui/dist/layui.js" tppabs="http://res.layui.com/layui/dist/layui.js?t=1632428048260" charset="utf-8"></script>
  1321. <script>
  1322. layui.config({
  1323. base: '..//public/static/lay/modules/layui/'
  1324. ,version: '1632428048260'
  1325. }).use('global');
  1326. </script>
  1327. <script>
  1328. layui.use('laydate', function(){
  1329. var laydate = layui.laydate;
  1330. //执行一个laydate实例
  1331. laydate.render({
  1332. elem: '#test1' //指定元素
  1333. });
  1334. //嵌套显示
  1335. laydate.render({
  1336. elem: '#test2'
  1337. ,position: 'static'
  1338. ,change: function(value){
  1339. lay('#testView').html(value);
  1340. }
  1341. });
  1342. });
  1343. </script>
  1344. </body>
  1345. </html>