js时间选择插件哪个最好用 知乎

JavaScript012

js时间选择插件哪个最好用 知乎,第1张

一下好一款laydate.js日期时间选择插件,具有一定的参考价值,希望可以帮到你

日期时间选择插件laydate.js:

效果图:

1. 引入JS。 

<script type="text/javascript" src="js/laydate.js"></script>

2. 根据需要做相应的配置。详情参看官网

<script>

 laydate({

  elem: '#seldate', //目标元素。由于laydate.js封装了一个轻量级的选择器引擎,因此elem还允许你传入class、tag但必须按照这种方式 '#id .class'

  event: 'focus', //响应事件。如果没有传入event,则按照默认的click

  format: 'YYYY/MM/DD hh:mm:ss', // 分隔符可以任意定义,该例子表示只显示年月

  festival: true, //显示节日

  istime: true, //显示时间选项

  choose: function(datas){ //选择日期完毕的回调

   alert('得到:'+datas)

  }

 })

</script>

实例源码:

<!DOCTYPE html> 

<html> 

<head> 

 <meta charset="utf-8"> 

 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 

 <meta name="viewport" content="width=device-width, initial-scale=1"> 

 <!-- 

 <link href="favicon.ico" rel="shortcut icon" type="image/x-icon" /> 

 <link href="favicon.ico" rel="Bookmark" type="image/x-icon" /> 

 -->

 <meta name="Generator" content="EditPlus®"> 

 <meta name="Author" content=""> 

 <meta name="Keywords" content=""> 

 <meta name="Description" content=""> 

 <title>layDate日期时间选择插件</title> 

 <link href="" rel="stylesheet" /> 

 <script type="text/javascript" src="js/laydate.js"></script> 

</head> 

<body> 

 <form method="post" action=""> 

 Way1, 

  请选择日期:<input type="text" name="date" onclick="laydate()" /> 

  <hr /> 

 Way2, 

  <input type="text" name="date" id='seldate' class="laydate-icon" /><hr /> 

  <script> 

   laydate({ 

    elem: '#seldate', //目标元素。由于laydate.js封装了一个轻量级的选择器引擎,因此elem还允许你传入class、tag但必须按照这种方式 '#id .class' 

    event: 'focus', //响应事件。如果没有传入event,则按照默认的click 

    format: 'YYYY/MM/DD hh:mm:ss', // 分隔符可以任意定义,该例子表示只显示年月 

    festival: true, //显示节日 

    istime: true, //显示时间选项 

    choose: function(datas){ //选择日期完毕的回调 

     alert('得到:'+datas) 

    } 

   }) 

  </script> 

 Way3, 

  <input id="seldate1"> 

  <span class="laydate-icon" onclick="laydate({elem:'#seldate1'})"></span> 

 </form> 

</body> 

</html>

方法:layui.define([mods], callback)

本地存储是对 localStorage 和 sessionStorage 的友好封装,可更方便地管理本地数据。

localStorage 持久化存储:layui.data(table, settings),数据会永久存在,除非物理删除。

sessionStorage 会话性存储:layui.sessionData(table, settings),页面关闭后即失效。注:layui 2.2.5 新增

layui.device(key)

方法/属性 描述

layui.cache 静态属性。获得一些配置及临时的缓存信息

layui.extend(options) 拓展一个模块别名,如:layui.extend({test: '/res/js/test'})

layui.each(obj, fn) 对象(Array、Object、DOM对象等)遍历,可用于取代for语句

layui.getStyle(node, name) 获得一个原始DOM节点的style属性值,如:layui.getStyle(document.body, 'font-size')

layui.img(url, callback, error) 图片预加载

layui.sort(obj, key, desc) 将数组中的对象按某个成员重新对该数组排序,如:layui.sort([{a: 3},{a: 1},{a: 5}], 'a')

layui.router() 获得location.hash路由,目前在Layui中没发挥作用。对做单页应用会派上用场。

layui.hint() 向控制台打印一些异常信息,目前只返回了error方法:layui.hint().error('出错啦')

layui.stope(e) 阻止事件冒泡

layui.onevent(modName, events, callback) 自定义模块事件,属于比较高级的应用。有兴趣的同学可以阅读layui.js源码以及form模块

layui.event(modName, events, params) 执行自定义模块事件,搭配onevent使用

layui.factory(modName) 用于获取模块对应的 define 回调函数

模块命名空间

layui 的模块接口会绑定在 layui 对象下,内部由 layui.define() 方法来完成。每一个模块都会一个特有的名字,并且无法被占用。所以你无需担心模块的空间被污染,除非你主动 delete layui.{模块名}。调用模块可通过 layui.use 方法来实现,然后再通过 layui 对象获得模块接口。

如何使用内部jQuery

//主动加载jquery模块

layui.use(['jquery', 'layer'], function(){

var//重点处

,layer = layui.layer

//后面就跟你平时使用jQuery一样

$('body').append('hello jquery')

})

首先看你的的控制台有没有报错加载不到layer.js或者form.js

然后你的整个表单必须有form层

我把代码和整个目录结构给你看

1、目录结构

请点击输入图片描述

2、代码

<!DOCTYPE html>

<html>

<head>

<title></title>

</head>

<body style="padding: 10px">

<form class="layui-form" action="">

<div class="layui-form-item">

<label class="layui-form-label">用户名</label>

<div class="layui-input-inline">

<input type="text" class="layui-input">

</div>

</div>

<div class="layui-form-item">

<label class="layui-form-label">角色</label>

<div class="layui-input-block">

<select name="gid" lay-verify="">

<option value="">请选择</option>

</select>

</div>

</div>

<div class="layui-form-item">

<label class="layui-form-label">密 码</label>

<div class="layui-input-inline">

<input type="text" class="layui-input">

</div>

</div>

<div class="layui-form-item">

<label class="layui-form-label">姓 名</label>

<div class="layui-input-inline">

<input type="text" class="layui-input">

</div>

</div>

<div class="layui-form-item">

<label class="layui-form-label">状 态</label>

<div class="layui-input-inline">

<input type="checkbox" lay-skin="primary">

</div>

</div>

</form>

<link rel="stylesheet" type="text/css" href="./layui/css/layui.css">

<script type="text/javascript" src="./layui/layui.all.js"></script>

<script type="text/javascript">

//一般直接写在一个js文件中

layui.use(['layer', 'form'], function(){

var layer = layui.layer

,form = layui.form

layer.msg('Hello World')

})

</script>

</body>

</html>

3、结果图

请点击输入图片描述