jQuery ui 利用 datepicker插件实现开始日期(minDate)和结束日期(maxDa

2020-05-16 18:47:15易采站长站整理

使用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();