中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

如何解決layui時間控件無法正常使用的問題

解決layui時間控件清空之后無法正常使用的問題,以及時間范圍的選擇

創(chuàng)新互聯(lián)建站是專業(yè)的紫金網(wǎng)站建設(shè)公司,紫金接單;提供網(wǎng)站設(shè)計、成都網(wǎng)站制作,網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進行紫金網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

共有兩種解決方式:

方式一(layui 1.x):

html代碼:

<div class="layui-inline">
<div class="layui-input-inline">
<input type="text" name="start_time" class="layui-input" id="start_time"
placeholder="開始時間(修改時間)">
</div>
</div>
<div class="layui-inline">
<div class="layui-input-inline">
<input type="text" name="end_time" class="layui-input" id="end_time"
placeholder="結(jié)束時間(修改時間)">
</div>
</div>
js代碼:
var start = {
istime: true,
format: 'YYYY-MM-DD hh:mm:ss',
max: '2099-06-16 23:59:59',
istoday: true,
choose: function (datas) {
end.min = datas; //開始日選好后,重置結(jié)束日的最小日期
}
};

var end = {
istime: true,
format: 'YYYY-MM-DD hh:mm:ss',
max: '2099-06-16 23:59:59',
istoday: true,
choose: function (datas) {
start.max = datas; //結(jié)束日選好后,重置開始日的最大日期
}
};

document.getElementById('start_time').onclick = function () {
start.elem = this;
laydate(start);
};
document.getElementById('end_time').onclick = function () {
end.elem = this;
laydate(end);
};

方式二(layui 2.x):

html代碼

<div class="layui-inline">
<div class="layui-input-inline">
<input type="text" name="start_time" class="layui-input" id="start_time"
placeholder="開始時間(修改時間)">
</div>
</div>
<div class="layui-inline">
<div class="layui-input-inline">
<input type="text" name="end_time" class="layui-input" id="end_time"
placeholder="結(jié)束時間(修改時間)">
</div>
</div>
js代碼
layui.use([ 'laydate'], function(){
var $ = layui.$;
var laydate = layui.laydate;
var nowTime = new Date().valueOf();
var max = null;

var start = laydate.render({
elem: '#start_time',
type: 'datetime',
max: nowTime,
btns: ['clear', 'confirm'],
done: function(value, date){
endMax = end.config.max;
end.config.min = date;
end.config.min.month = date.month -1;
}
});
var end = laydate.render({
elem: '#end_time',
type: 'datetime',
max: nowTime,
done: function(value, date){
if($.trim(value) == ''){
var curDate = new Date();
date = {'date': curDate.getDate(), 'month': curDate.getMonth()+1, 'year': curDate.getFullYear()};
}
start.config.max = date;
start.config.max.month = date.month -1;
}
});

根據(jù)開始時間 動態(tài)限制結(jié)束時間  知識點  type: 'datetime', 是帶時分秒的 date 是不帶時分秒的

layui.use('laydate', function(){
   /* lay('.layui-input').each(function(){
  laydate.render({
    elem: this
    ,trigger: 'click'
    ,change: function(value, date, endDate){
    console.log(value); //得到日期生成的值,如:2017-08-18
    console.log(date); //得到日期時間對象:{year: 2017, month: 8, date: 18, hours: 0, minutes: 0, seconds: 0}
    console.log(endDate); //得結(jié)束的日期時間對象,開啟范圍選擇(range: true)才會返回。對象成員同上。
    }
  });
});  */
var $ = layui.$;
    var laydate = layui.laydate;
   var nowTime = new Date().valueOf();
    var max = null;
       var start = laydate.render({
        elem: '#start_time',
        type: 'datetime',
        btns: ['clear', 'confirm'],
        done: function(value, date){
            endMax = end.config.max;
            end.config.min = date;
            end.config.min.month = date.month -1;
        },
        change: function(value, date, endDate){
        var timestamp2 = Date.parse(new Date(value));
timestamp2 = timestamp2 / 1000;
            end.config.min = timestamp2;
            end.config.min.month = date.month -1;
    }
    });
    var end = laydate.render({
        elem: '#end_time',
        type: 'date',
        done: function(value, date){
        console.log(" ======  "+date);
            if($.trim(value) == ''){
                var curDate = new Date();
                date = {'date': curDate.getDate(), 'month': curDate.getMonth()+1, 'year': curDate.getFullYear()};
            }
            start.config.max = date;
            start.config.max.month = date.month -1;
        }
    });
});

通過以上代碼,就已經(jīng)可以實現(xiàn)動態(tài)改變開始時間最大值與結(jié)束時間最小值的改變了。下面來說一下容易遇到的坑:

坑一 :laydate.render無法重復(fù)渲染,當(dāng)laydate.render對應(yīng)一個elem已經(jīng)渲染過一次之后,我們是無法通過再次渲染來修改其中的max值與min值的。

坑二 :startDate.config.max與endDate.config.min是一個對象,不是一個字符串,endDate.config.min="2017-01-01";實際這里得到的是一個對象,不同于在我們渲染時的min與max了,直接將字符串賦值必然沒有效果。

坑三:dates的格式雖然與endDate.config.min格式相同但是直接讓endDate.config.min=dates你會發(fā)現(xiàn)并不是你想要的結(jié)果,是因為雖然dates中的數(shù)據(jù)是你選擇的日期,可是endDate.config.min中設(shè)置的month的值卻比你輸入的month的值大了一個月,因此假如你選的開始日期是11月13日,直接賦值給了endDate.config.min之后你會發(fā)現(xiàn)結(jié)束日期的最小日期變成了12月13日,因此我們需要將dates中的月份值減一后再賦值給endDate.config.min。

以上就是layui時間控件選擇時間的詳細(xì)內(nèi)容,更多請關(guān)注創(chuàng)新互聯(lián)其它相關(guān)文章!

分享文章:如何解決layui時間控件無法正常使用的問題
文章起源:http://www.rwnh.cn/article36/gshssg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、網(wǎng)站策劃、App開發(fā)、域名注冊、搜索引擎優(yōu)化企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
玉门市| 察雅县| 阿克陶县| 响水县| 石狮市| 大田县| 大同市| 贡嘎县| 石门县| 讷河市| 内丘县| 华池县| 石柱| 潞城市| 乌兰察布市| 延寿县| 盐亭县| 吉木乃县| 谷城县| 阜南县| 通州区| 昌宁县| 长汀县| 西乌| 松江区| 长阳| 绥江县| 南陵县| 南汇区| 沾益县| 新安县| 南和县| 南溪县| 浑源县| 静海县| 商丘市| 平邑县| 墨脱县| 庆阳市| 诸城市| 东兴市|