layui时间区间搜索功能 如何锁定 开始时间 结束时间 的可选范围

1.示例图:

代码:

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

<label class="layui-form-label">活动时间</label>

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

<input type="text" id="start_time" name="start_time" autocomplete="off" placeholder="请输入开始时间" class="layui-input">

</div> 至

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

<input type="text" id="end_time" name="start_time" autocomplete="off" placeholder="请输入结束时间" class="layui-input">

</div>

</div>

2.当设置了start_time以后,end_time肯定要大于start_time,否则要设置为不可选,

当设置了end_time以后,start_time肯定要小于start_time,否则要设置为不可选,

3.具体操作如下:复制以下代码即可

<script>
    layui.use('laydate', function(){
        var laydate = layui.laydate;
        var endDate= laydate.render({
            elem: '#end_time',//选择器结束时间
            type: 'datetime',
            min:"1970-1-1",//设置min默认最小值
            done: function(value,date){
                startDate.config.max={
                    year:date.year,
                    month:date.month-1,//关键
                    date: date.date,
                    hours: 0,
                    minutes: 0,
                    seconds : 0
                }
            }
        });
        //日期范围
        var startDate=laydate.render({
            elem: '#start_time',
            type: 'datetime',
            max:"2099-12-31",//设置一个默认最大值
            done: function(value, date){
                endDate.config.min ={
                    year:date.year,
                    month:date.month-1, //关键
                    date: date.date,
                    hours: 0,
                    minutes: 0,
                    seconds : 0
                };
            }
        });

    });
</script>

控制器调用例子:

 public function keywords_count(){
        $condition1 =strtotime(input('start_time'));
        $condition2 = strtotime(input('end_time'));
//        var_dump($condition1);
        $condition = input('condition');
        $where='';
        if($condition){
//            $where['keyword']=$condition;
            $where['keyword']=array('like','%'.$condition.'%');
        }
        if($condition1&&$condition2) {
            $where['create_time'] = array(array('egt', $condition1), array('elt', $condition2), 'AND');
        }
        if($where){
            $gust = db('keywords')->where($where)->field('id,keyword,create_time,count(*) as count')->group("keyword")->order("count desc")->select();
            $gustcount = db('keywords')->where($where)->field('id,keyword,create_time,count(*) as count')->count();
        }else{
            $gust = db('keywords')->field('id,keyword,create_time,count(*) as count')->group("keyword")->order("count desc")->select();
            $gustcount = db('keywords')->field('id,keyword,create_time,count(*) as count')->count();
//            $gust = db('keywords')->order('id DESC')->select();
        }
        $this->assign('condition1',$condition1);
        $this->assign('condition2',$condition2);
        $this->assign('condition',$condition);
        $this->assign('gust',$gust);
        $this->assign('gustcount',$gustcount);
        return view();
    }

猜你喜欢

转载自blog.csdn.net/u012767761/article/details/82666331