zoukankan      html  css  js  c++  java
  • jQuery ui 利用 datepicker插件实现开始日期(minDate)和结束日期(maxDate)

    使用jQuery ui首先需要引入jQuery类库,jQuery ui js脚本和jQuery ui css样式表。代码示例如下:

    复制代码 代码如下:

    <script src="js/jquery-1.7.1.js"></script>  
    <script src="js/jquery-ui-1.8.18.custom.min.js"></script>
    <link rel="stylesheet" type="text/css" href="css/smoothness/jquery-ui-1.8.18.custom.css">

    注:引入js脚本时,需先引入jQuery类库,后引入jQuery ui 脚本

    下面为两种实现步骤:

    思路一:

    第一步  实现两个datepicker组件。

      需要定义两个input标签,类型为text,并指定id属性

    HTML代码如下

    复制代码 代码如下:

    开始日期:<input type="text" id="start">
    结束日期:<input type="text" id="end">

    在js代码中得到两个input元素的jQuery对象,并将其转化为datepicker组件

    Js代码如下

    复制代码 代码如下:

        $(document).ready(function(){ 
            $("#start").datepicker(); 
            $("#end").datepicker(); 
        }); 

    实现以上操作后,在页面中点击文本框,如果出现datepicker则代表成功。

    第二步  设置开始和结束日期

      当选择开始日期的值后,则结束日期的最小值应该就是开始日期;同理,当选择结束日期后,开始日期的最大值则应该是结束日期。我们可以利用datepicker中的onSelect属性来设置当选择指定日期后触发的事件,通过该事件来指定对应的datepicker最小日期或最大日期。

    Js代码如下

    复制代码 代码如下:

    $("#start").datepicker({
        onSelect:function(dateText,inst){
           $("#end").datepicker("option","minDate",dateText);
        }
    });
    $("#end").datepicker({
        onSelect:function(dateText,inst){
            $("#start").datepicker("option","maxDate",dateText);
        }
    });

    注:匿名函数中的dateText属性为当前选择日期的字符串

    思路二:

    第一步  同时获得两个文本框对象,并将其转换为datepicker(利用jQuery的选择器)

    HTML代码如下

    复制代码 代码如下:

    开始日期:<input type="text" id="start">
    结束日期:<input type="text" id="end">

    Js代码如下

    复制代码 代码如下:

    var dates = $("#start,#end");
    dates.datepicker();

    第二步  同样在选择日期后,触发onSelect事件,调用函数传递selectedDate参数,

    函数体中首先判断触发事件的是开始日期还是结束日期,通过该判断来指定设置minDate或者是maxDate,然后利用not()函数,来反向选择另一个datepicker对象,并设置其对应的属性。

    Js代码如下

    复制代码 代码如下:

    dates.datepicker({
        onSelect: function(selectedDate){
           var option = this.id == "start" ? "minDate" : "maxDate";
           dates.not(this).datepicker("option", option, selectedDate);
        }
    });

    这样在设置一方后,另一方就会被限制了。

    实现的效果如图:

    life is a jounery,yes
  • 相关阅读:
    framework7对日历的一些效果处理
    framework7 v2.x轮播图写法:
    soap使用xml调用webapi后返回xml信息进行JSON转换处理,以顺丰查询接口为例
    framework7滑动删除列表触发chrome 报错解决办法
    页面文本超出后CSS实现隐藏的方法
    页面dom事件防止失效的一种写法
    framework7 1.3.5 路由跳转后DOM失效问题
    node 上的cookie的签名和解签名
    VUE在页面没加载完的时候会显示原代码的处理方法
    P2220 [HAOI2012]容易题
  • 原文地址:https://www.cnblogs.com/CaptainLin/p/4153633.html
Copyright © 2011-2022 走看看