在基於Boostrap的Web開發中,每每須要錄入日期內容,基於Boostrap的插件中,關於日期的錄入可使用bootstrap-datepicker這個很是不錯的插件,以替代默認的type=date這種不太友好的日期錄入控件,本篇介紹的是我在個人Boostrap開發框架中利用bootstrap-datepicker插件實現日期的錄入處理。javascript
關於bootstrap-datepicker插件的相關的項目地址以下所示:css
http://www.bootcss.com/p/bootstrap-datetimepicker java
https://github.com/uxsolutions/bootstrap-datepickergit
使用這個插件,和其餘插件使用相似,只須要引入對應的JS文件和CSS樣式便可,以下是該插件的引用文件。github
<script src="/js/bootstrap-datepicker.js"></script> <script src="/css/bootstrap-datepicker3.min.css"></script>
若是須要使用本地語言,引入語言文件便可。bootstrap
<script src="/locales/bootstrap-datepicker.zh-CN.js"></script>
插件的文件目錄以下所示框架
插件的使用界面效果以下所示this
咱們在MVC框架中,使用插件的時候,每每是把對應的CSS和JS,經過打包的方式進行引入,如在C#代碼裏面BundleConfig.cs的代碼以下所示spa
CSS文件引入以下代碼所示插件
JS文件相似,以下所示。
而咱們在開發Boostrap項目的時候,咱們可使用母版的方式引入對應的JS和CSS文件,在子頁面則不須要再關注這些應用了,這些是基於MVC的Boostrap開發常見的處理,在這裏就再也不贅述了。
初始化bootstrap-datepicker插件也比較簡單,最簡單的代碼以下所示。
<input type="text" id="datetimepicker">
$('#datetimepicker').datetimepicker({ format: 'yyyy-mm-dd hh:ii' });
或者
<script type="text/javascript"> $(".form_datetime").datetimepicker(); </script>
而通常使用的時候,咱們須要設置語言,格式,按鈕等屬性,以下所示
$('.input-daterange input').each(function () { $(this).datepicker({ language: 'zh-CN', //語言 autoclose: true, //選擇後自動關閉 clearBtn: true,//清除按鈕 format: "yyyy-mm-dd"//日期格式 }); });
在查詢數據的界面中,咱們通常須要一個區間的時間,以下所示。
而該界面的代碼以下所示。
<div class="input-group input-daterange"> <input id="WHC_PayDate" name="WHC_PayDate" type="text" placeholder="付款日期(起)" data-date-format="yyyy-mm-dd" class="form-control"/> <div class="input-group-addon">~</div> <input id="WHC_PayDate2" name="WHC_PayDate" type="text" placeholder="付款日期(止)" data-date-format="yyyy-mm-dd" class="form-control"/> </div>
以及錄入界面明細的時候,選擇單個日期的界面以下所示。
$('.input-date input').each(function () { $(this).datepicker({ language: 'zh-CN', //語言 autoclose: true, //選擇後自動關閉 clearBtn: true,//清除按鈕 format: "yyyy-mm-dd"//日期格式 }); });
使用插件的時候,咱們不可能爲每一個input初始化bootstrap-datepicker插件,所以使用了類選擇器的處理方式實現全部日期插件的初始化。
插件可選的日期格式:
最後看看總體的界面效果吧。