laydate.html 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="renderer" content="webkit">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  7. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  8. <title>日期模块 - layui</title>
  9. <link rel="stylesheet" href="../src/css/layui.css">
  10. <style>
  11. body{padding: 50px 100px;}
  12. .layui-inline{margin-right: 15px;}
  13. </style>
  14. </head>
  15. <body>
  16. 日期时间范围选择:
  17. <div class="layui-inline">
  18. <input type="text" class="layui-input" id="test1">
  19. </div>
  20. <br><br><hr><br>
  21. 日期选择器:
  22. <div class="layui-inline">
  23. <input type="text" class="layui-input" id="test2">
  24. </div>
  25. <br><br><hr><br>
  26. 年选择器:
  27. <div class="layui-inline">
  28. <input type="text" class="layui-input" id="test3">
  29. </div>
  30. 年月选择器:
  31. <div class="layui-inline">
  32. <input type="text" class="layui-input" id="test4">
  33. </div>
  34. 时间时间器:
  35. <div class="layui-inline">
  36. <input type="text" class="layui-input" id="test5">
  37. </div>
  38. <br><br><hr><br>
  39. 时间范围选择
  40. <div class="layui-inline">
  41. <input type="text" class="layui-input" id="test55">
  42. </div>
  43. 自定义重要日:
  44. <div class="layui-inline">
  45. <input type="text" class="layui-input" id="test555">
  46. </div>
  47. <br><br><hr><br>
  48. 同时绑定多个:
  49. <div class="layui-inline">
  50. <input type="text" class="layui-input test-item">
  51. </div>
  52. <div class="layui-inline">
  53. <input type="text" class="layui-input test-item">
  54. </div>
  55. <div class="layui-inline">
  56. <input type="text" class="layui-input test-item">
  57. </div>
  58. <br><br><hr><br>
  59. 墨绿主题:
  60. <div class="layui-inline">
  61. <input type="text" class="layui-input" id="test6-1">
  62. </div>
  63. 自定义头部背景色:
  64. <div class="layui-inline">
  65. <input type="text" class="layui-input" id="test6-2">
  66. </div>
  67. 格子主题:
  68. <div class="layui-inline">
  69. <input type="text" class="layui-input" id="test6-3">
  70. </div>
  71. <br><br><hr><br>
  72. <button class="layui-btn" id="test7">其它元素触发</button>
  73. <div class="layui-inline">
  74. <input type="text" class="layui-input" id="test6">
  75. </div>
  76. <button class="layui-btn" id="test9">外部事件触发</button>
  77. <div class="layui-inline">
  78. <input type="text" class="layui-input" id="test8">
  79. </div>
  80. <br><br><hr><br>
  81. 直接嵌套在指定容器中:<br><br>
  82. <div class="layui-inline" id="test10"></div>
  83. <div class="layui-inline" id="test11" style="margin-left: 30px;"></div>
  84. <script src="../src/layui.js" charset="utf-8"></script>
  85. <script>
  86. layui.use('laydate', function(){
  87. var laydate = layui.laydate;
  88. //双控件
  89. laydate.render({
  90. elem: '#test1' //指定元素
  91. ,type: 'datetime'
  92. ,trigger: 'click'
  93. ,lang: 'en'
  94. //,lang: 'en'
  95. ,range: true //开启日期范围,默认使用“_”分割
  96. ,done: function(value, date, endDate){
  97. console.log(value, date, endDate);
  98. }
  99. ,change: function(value, date, endDate){
  100. console.log(value, date, endDate);
  101. }
  102. });
  103. //单控件
  104. laydate.render({
  105. elem: '#test2'
  106. ,format: 'y年MM月dd日'
  107. //,value: new Date(2017,7,20)
  108. //,min: '2016-10-14'
  109. //,max: -1
  110. ,value: '1989年10月14日'
  111. ,ready: function(date){
  112. console.log(date);
  113. }
  114. ,done: function(value, date, endDate){
  115. console.log(value, date, endDate);
  116. }
  117. });
  118. //年选择器
  119. laydate.render({
  120. elem: '#test3'
  121. ,type: 'year'
  122. //,range: true
  123. //,trigger: 'click'
  124. ,done: function(value, date, endDate){
  125. console.log(value, date, endDate);
  126. }
  127. ,change: function(value, date, endDate){
  128. //this.elem.val(value)
  129. }
  130. });
  131. //年月选择器
  132. laydate.render({
  133. elem: '#test4'
  134. ,type: 'month'
  135. //,range: true
  136. //,trigger: 'click'
  137. ,done: function(value, date, endDate){
  138. console.log(value, date, endDate);
  139. }
  140. ,change: function(value, date, endDate){
  141. this.elem.val(value)
  142. }
  143. });
  144. //时间选择器
  145. laydate.render({
  146. elem: '#test5'
  147. ,type: 'time'
  148. //,range: true
  149. //,trigger: 'click'
  150. ,min: '09:30:00'
  151. ,max: '17:30:00'
  152. ,done: function(value, date, endDate){
  153. console.log(value, date, endDate);
  154. }
  155. ,change: function(value, date, endDate){
  156. //this.elem.val(value)
  157. }
  158. });
  159. //时间范围选择器
  160. laydate.render({
  161. elem: '#test55'
  162. ,type: 'time'
  163. ,range: true
  164. //,trigger: 'click'
  165. ,done: function(value, date, endDate){
  166. console.log(value, date, endDate);
  167. }
  168. });
  169. //同时绑定多个
  170. lay('.test-item').each(function(){
  171. laydate.render({
  172. elem: this
  173. ,trigger: 'click'
  174. });
  175. });
  176. //自定义重要日
  177. var ins555 = laydate.render({
  178. elem: '#test555'
  179. //,calendar: true //是否开启公历重要节日
  180. ,mark: { //标记重要日子
  181. '0-8-15': '纪念' //0代表:每年
  182. ,'0-0-15': '中旬'
  183. ,'2017-8-20': '发布'
  184. ,'2017-8-31': '月底'
  185. }
  186. ,done: function(value, date, endDate){
  187. if(date.year == 2017 && date.month == 8 && date.date == 15){
  188. //console.log('中国人民战胜日本法西斯纪念日');
  189. }
  190. }
  191. ,change: function(value, date, endDate){
  192. console.log(value)
  193. }
  194. });
  195. //墨绿主题
  196. laydate.render({
  197. elem: '#test6-1' //指定元素
  198. ,type: 'datetime'
  199. ,theme: 'molv'
  200. //,range: true
  201. ,trigger: 'click'
  202. });
  203. //自定义背景色主题
  204. laydate.render({
  205. elem: '#test6-2' //指定元素
  206. ,type: 'datetime'
  207. ,theme: '#393D49'
  208. //,range: true
  209. ,trigger: 'click'
  210. });
  211. //格子主题
  212. laydate.render({
  213. elem: '#test6-3' //指定元素
  214. //,type: 'datetime'
  215. ,theme: 'grid'
  216. //,range: true
  217. ,trigger: 'click'
  218. });
  219. //其它元素触发
  220. laydate.render({
  221. elem: '#test6' //指定元素
  222. ,eventElem: '#test7' //绑定执行事件的元素
  223. ,lang: 'en'
  224. });
  225. //外部事件
  226. lay('#test9').on('click', function(e){
  227. laydate.render({
  228. elem: '#test8'
  229. ,type: 'datetime'
  230. ,show: true
  231. //,min: '2017-08-12 00:10:00'
  232. //,max: '2017-08-12 23:10:10'
  233. ,closeStop: '#test9' //点击 #test6 所在元素区域不关闭控件
  234. ,change: function(value, date){
  235. console.log(value, date)
  236. }
  237. ,done: function(value, date){
  238. console.log(value, date)
  239. }
  240. });
  241. });
  242. //直接嵌套在指定容器中
  243. var ins10 = laydate.render({
  244. elem: '#test10'
  245. ,position: 'static'
  246. ,calendar: true //是否开启公历重要节日
  247. ,mark: { //标记重要日子
  248. '2017-8-20': ''
  249. ,'2017-8-21': ''
  250. }
  251. ,done: function(value, date, endDate){
  252. if(date.year == 2017 && date.month == 8 && date.date == 20){
  253. ins10.hint('XX活动日');
  254. }
  255. }
  256. ,change: function(value, date, endDate){
  257. console.log(value)
  258. }
  259. });
  260. laydate.render({
  261. elem: '#test11'
  262. ,position: 'static'
  263. ,lang: 'en'
  264. ,type: 'datetime'
  265. ,calendar: true //是否开启公历重要节日
  266. ,done: function(value, date, endDate){
  267. //console.log(value, date, endDate);
  268. }
  269. ,change: function(value, date, endDate){
  270. console.log(value)
  271. }
  272. });
  273. });
  274. </script>
  275. </body>
  276. </html>