App下載

在html5中使用amaze-ui的datepicker和datetimepicker需要注意總結(jié)!

萌夠才回家 2021-08-19 09:48:12 瀏覽數(shù) (1944)
反饋

在前一階段小編在一個(gè)偶然的機(jī)會(huì)使用到了amaze-ui這個(gè)插件,那么今天就來和大家說說“在html5中使用amaze-ui的datepicker和datetimepicker需要注意總結(jié)!”這個(gè)方面的方法和注意事項(xiàng)!

下面是有關(guān)于 amaze-ui 這個(gè)插件的相關(guān)參考內(nèi)容:

點(diǎn)1:參考文檔不能選錯(cuò),amaze的默認(rèn)文檔是http://amazeui.shopxo.net/getting-started/,但是當(dāng)我們要使用datetimepicker是就要使用https://github.com/amazeui/datetimepicker,
這就是我想吐槽的地方了,amaze竟然把datetimepicker放在一個(gè)不起眼的小角落里,這是大家需要注意的地方。

點(diǎn)2:amaze-ui的日期時(shí)間插件是真的不好看,可擴(kuò)展性不太好,特別是在對時(shí)間進(jìn)行控制的時(shí)候很麻煩。在我們的項(xiàng)目中能不用這個(gè)堅(jiān)決不用,我這一次是在別人用了之后才使用這個(gè)的,
后來發(fā)現(xiàn)真費(fèi)勁。

點(diǎn)3:三時(shí)間(datetimepicker)校驗(yàn):

效果圖:

jsp關(guān)鍵代碼:

<div class="inputItem">
    <div class="inputName">制卡時(shí)間</div>
     <input type="text" id="gender" name="gender" class="am-form-field data-input" readonly required placeholder="請選擇">
 </div>
 <div class="inputItem">
     <div class="inputName">生效時(shí)間</div>
     <input type="text" id="startDate" name="startDate" class="am-form-field data-input" readonly required placeholder="請選擇">
 </div>
 <div class="inputItem">
     <div class="inputName">過期時(shí)間</div>
     <input type="text" id="expDate" name="expDate" class="am-form-field data-input" readonly required placeholder="請選擇">
 </div>

js校驗(yàn)代碼:
為了使大家看的清楚,這里我使用一種比較巧妙的手法,因?yàn)槭侨掌谛r?yàn),設(shè)置開始時(shí)間參數(shù)只能是setStartTime,設(shè)置結(jié)束參數(shù)只能是setEndTime,所以不能在jq的入口函數(shù)進(jìn)行初始化工作,需要在jq的入口函數(shù)中調(diào)用兩個(gè)函數(shù)進(jìn)行初始化,代碼如下:

initDatePicker = function () {
   //日期插件初始化
   $('#gender').datetimepicker({
       language: 'zh-CN',
       format: 'yyyy-mm-dd hh:ii:ss',
       minView: 2
       //pickerPosition: "bottom-left"
   }).on("changeDate", function (ev) {  //值改變事件
       if (ev.date) {
           $("#startDate").datetimepicker('setStartDate', new Date(ev.date.valueOf()));
       } else {
           $("#startDate").datetimepicker('setStartDate', null);
       }
   });
   $('#startDate').datetimepicker({
       language: 'zh-CN',
       format: 'yyyy-mm-dd hh:ii:ss',
       minView: 2
       //pickerPosition: "bottom-left"
   }).on("changeDate", function (ev) {
       if (ev.date) {
           $("#gender").datetimepicker('setEndDate', new Date(ev.date.valueOf()));
       } else {
           $("#gender").datetimepicker('setEndDate', new Date());
       }
   });
   $('#gender,#startDate').click(function () {
       $(this).datetimepicker("show");
   })
};
initDatePicker1 = function () {
    $('#startDate').datetimepicker({
        language: 'zh-CN',
        format: 'yyyy-mm-dd hh:ii:ss',
        minView: 2
        //pickerPosition: "bottom-left"
    }).on("changeDate", function (ev) {
        if (ev.date) {
            $("#expDate").datetimepicker('setStartDate', new Date(ev.date.valueOf()));
        } else {
            $("#expDate").datetimepicker('setStartDate', new Date());
        }
    });
    $('#expDate').datetimepicker({
        language: 'zh-CN',
        format: 'yyyy-mm-dd hh:ii:ss',
        minView: 2
        //pickerPosition: "bottom-left"
    }).on("changeDate", function (ev) {
        if (ev.date) {
            $("#startDate").datetimepicker('setEndDate', new Date(ev.date.valueOf()));
        } else {
            $("#startDate").datetimepicker('setEndDate', null);
        }
    });
    $('#startDate,#expDate').click(function () {
        $(this).datetimepicker("show");
    })
}

注意:

datetimepicker中的minView的用法,它是控制插件的最小顯示顯示視圖,minView=2表示最小的選擇是多好號,沒有時(shí)間的選擇了,默認(rèn)情況是選擇到秒的;而datepicker中對應(yīng)的設(shè)置是minViewMode,這里就把我坑了一次。

最后進(jìn)行補(bǔ)充,在開發(fā)中如果用amaze的時(shí)間插件,我建議統(tǒng)一使用datetimepicker,他相對datepicker更具通用性,在時(shí)間范圍的控制上更靈活,我們只需使用minView進(jìn)行控制最小顯示就行。

在你閱讀到此也就說明了,小編這篇關(guān)于“在html5中使用amaze-ui的datepicker和datetimepicker需要注意總結(jié)!”這方面的內(nèi)容分享就到這里了,當(dāng)然我們?nèi)绻麑τ?amaze-ui 這個(gè)插件有不懂的地方都可以在 Amaze UI 教程手冊中進(jìn)行深度的了解和學(xué)習(xí)! 


0 人點(diǎn)贊