這篇文章給大家分享的是有關(guān)Bootstrap中DatePicker怎么用的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
站在用戶的角度思考問題,與客戶深入溝通,找到渠縣網(wǎng)站設(shè)計與渠縣網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗,讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網(wǎng)站設(shè)計、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣、域名注冊、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋渠縣地區(qū)。
用日期插件時,經(jīng)常會有一種需求。兩個input框選擇。開始時間小于結(jié)束時間,結(jié)束時間大于開始時間,開始時間和結(jié)束時間都不大于當前時間。
我們當然可以用選擇的結(jié)果來判斷輸入正確與否。但是更好的辦法是讓我們的日期選擇插件做出一些限制。
Bootstrap搭配了很優(yōu)秀的日期選擇插件。DatePicker和DateTimePicker。
兩者功能很類似。使用方法也是差不多的。DatePicker支持更多的事件和設(shè)置。
看api知道日期變化的時候會有一個事件changeDate。當選擇的日期變化的時候,會調(diào)用我們給這個事件的回調(diào)。但是遺憾的是當我們直接在輸入框中輸入或刪除日期的時候貌似并不會觸發(fā)到這個事件。所以可以把input框添加屬性 readonly。只讀狀態(tài),并且給日期控件一個清除按鈕。這樣日期的變化正常情況下就只有通過日期插件來控制了。
然而當使用DateTimePicker插件點擊清除按鈕的時候,會報錯 Uncaught TypeError: Cannot read property 'getTime' of null,結(jié)果導致changeDate事件也不能正常使用。
所以就改用DatePicker插件。
然后當一個輸入框日期變化(包括清除)的時候,changeDate事件觸發(fā),在其回調(diào)函數(shù)里修改另一個輸入框的可選范圍。
另外,DatePicker要使界面顯示中文,也需要加載css。bootstrap-datepicker.zh-CN.min.js。
下面是代碼:
function DatePicker(beginSelector,endSelector){ // 僅選擇日期 $(beginSelector).datepicker( { language: "zh-CN", autoclose: true, startView: 0, format: "yyyy-mm-dd", clearBtn:true, todayBtn:false, endDate:new Date() }).on('changeDate', function(ev){ if(ev.date){ $(endSelector).datepicker('setStartDate', new Date(ev.date.valueOf())) }else{ $(endSelector).datepicker('setStartDate',null); } }) $(endSelector).datepicker( { language: "zh-CN", autoclose: true, startView:0, format: "yyyy-mm-dd", clearBtn:true, todayBtn:false, endDate:new Date() }).on('changeDate', function(ev){ if(ev.date){ $(beginSelector).datepicker('setEndDate', new Date(ev.date.valueOf())) }else{ $(beginSelector).datepicker('setEndDate',new Date()); } }) } DatePicker("#date_begin","#date_end");
Bootstrap DatePicker實現(xiàn)日期選擇 開始日期不大于結(jié)束時間,結(jié)束時間不小于開始時間,開始日期和結(jié)束日期都不大于當前日期。
感謝各位的閱讀!關(guān)于“Bootstrap中DatePicker怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!