asp.net mvc4中bootstrap datetimepicker控件的使用
前段時(shí)間寫了一篇關(guān)于調(diào)用阿里大于的短信接口來開發(fā)例會(huì)短信群發(fā)通知功能的文章http://www.dbjr.com.cn/article/94142.htm,其中的例會(huì)時(shí)間是需求中的重中之重,它需要滿足“格式化”,“易輸入”這兩點(diǎn),對短信費(fèi)用關(guān)心的開發(fā)者要知道長短信是兩條短信費(fèi)用之和,因此,例會(huì)時(shí)間不能隨意交給用戶自定義輸入;要考慮到“易輸入”這點(diǎn),只能選擇日期選擇控件來輔助用戶輸入,由于日期選擇控件較為小巧使用,在頁面中引入并不是難事。在本篇文章中,使用的是bootstrap的datetimepicker控件,如今bootstrap廣泛使用,加之項(xiàng)目里用的也是bootstrap框架快速搭建界面的,這樣一來選擇這款日期控件也能較省資源,在這里呈上它的效果圖:

這里想分享以下我在引入datetimepicker資源時(shí)遇到的一個(gè)問題解決方法,這里你需要引入bootstrap-datetimepicker.css和bootstrap-datetimepicker.js,但是引入資源前,你需要在asp.net mvc 中的BundleConfig.cs稍作改變,要說明的是,這個(gè)日期控件依賴jquery.js和bootstrap.js,這些資源引用有時(shí)要考慮有先后順序,應(yīng)該先引用jquery.js再bootstrap.js便是bootstrap-datetimepicker.js。如果遇到控件點(diǎn)擊無反應(yīng),可以使用火狐瀏覽器在控制臺(tái)查看頁面遇到的錯(cuò)誤。
在引用完資源后,這里對html結(jié)構(gòu)不再說。要知道的在下載的控件zip壓縮包里,有示例html,這很方便進(jìn)行操作?,F(xiàn)在解決了易輸入的需求,再之是格式化,好在這個(gè)日期控件得到的日期時(shí)間已經(jīng)是規(guī)范化的,但有一個(gè)問題,選擇的時(shí)間是英文的,是否需要漢化也是一個(gè)考慮的方向。

項(xiàng)目里對時(shí)間要求的格式為如:10月04。這里不考慮漢化,在后臺(tái)代碼中對字符串處理,得到預(yù)期的時(shí)間日期。這里可以采用ajax提交選擇的日期。先在在action中做處理:
public ActionResult SmsSendForMeeting(FormCollection Form)
{
string Operator = Form["Operator"] ;//發(fā)送者
string Department =Form["Department"] ;//部門名稱
string Time = Form["Time"].ToString();//設(shè)定的時(shí)間
//對日期進(jìn)行處理
//日期格式:"18 September 2016 - 08:30 pm"
Time = sp.DateParse(Time);//調(diào)用日期處理函數(shù)
//省略其他無關(guān)代碼
return View();
}
這里用到了DateParse()方法,這是解決日期格式轉(zhuǎn)換的方法。這里的思路就兩條,一個(gè)是將年份和空格去掉,一個(gè)便是將英文月份轉(zhuǎn)換為數(shù)字月份,也就是string的操作。
public string DateParse(string Time)
{
//string Time = "19 January 2016 - 09:00 pm";
Time = Time.Replace(" ", "");//去除空格
string day = Time.Substring(0, 2) + "日";//取出“日”
int c = Time.LastIndexOf(":") - 2;
string DetailTime = Time.Substring(c);//具體到小時(shí)分鐘
int b = Time.LastIndexOf("201");//這里不是2016
Time = Time.Remove(b);
string month = Time.Remove(0, 2);//月份
switch (month)
{
case "January":
month = "1月";
break;
case "February":
month = "2月";
break;
case "March":
month = "3月";
break;
case "April":
month = "4月";
break;
case "May":
month = "5月";
break;
case "June":
month = "6月";
break;
case "July":
month = "7月";
break;
case "August":
month = "8月";
break;
case "September":
month = "9月";
break;
case "October":
month = "10月";
break;
case "November":
month = "11月";
break;
case "December":
month = "12月";
break;
}
string DateTime = month + day + DetailTime;//得到->9月18日08:30pm
return DateTime;
}
這里就是用到的switch ()函數(shù)和string操作如substring、replace、indexof、remove等,處理的思路有許多,在這里是從左到右處理字符串。DateParse()函數(shù)最后返回就是需要的10月4日,這樣就滿足了對例會(huì)短信日期“格式化”和“易輸入”的需求。如果我思路和方法有誤,懇請各位指正,虛心求教。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Bootstrap中datetimepicker使用小結(jié)
- bootstrap日歷插件datetimepicker使用方法
- Bootstrap3 datetimepicker控件使用實(shí)例
- AngularJs中Bootstrap3 datetimepicker使用實(shí)例
- bootstrap-datetimepicker實(shí)現(xiàn)只顯示到日期的方法
- bootstrap datetimepicker2.3.11時(shí)間插件使用
- 基于bootstrap-datetimepicker.js不支持IE8的快速解決方法
- Bootstrap時(shí)間選擇器datetimepicker和daterangepicker使用實(shí)例解析
- angularjs封裝bootstrap時(shí)間插件datetimepicker
- bootstrap datetimepicker實(shí)現(xiàn)秒鐘選擇下拉框
相關(guān)文章
net core下鏈路追蹤skywalking安裝和簡單使用教程
本文將從0開始搭建兩個(gè)webapi項(xiàng)目,使用Skywalking來追蹤他們之間的調(diào)用關(guān)系及響應(yīng)時(shí)間,開發(fā)環(huán)境為VisualStudio2019,對net core 鏈路追蹤skywalking安裝和使用教程感興趣的朋友一起看看吧2021-10-10
Asp.net通過SignalR2進(jìn)行實(shí)時(shí)聊天
這篇文章介紹了Asp.net通過SignalR2進(jìn)行實(shí)時(shí)聊天的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05
ASP.NET 2.0 程序安全的基礎(chǔ)知識(shí)
成員關(guān)系的概念在人類社會(huì)中是一個(gè)層次比較低的概念,源于希望屬于某個(gè)群組的意識(shí)。同樣,在ASP.NET 2.0程序開始開發(fā)涉及到成員關(guān)系的應(yīng)用程序時(shí),必須首先理解身份、驗(yàn)證和授權(quán)這幾個(gè)關(guān)鍵的概念。2010-04-04
asp.net使用for循環(huán)實(shí)現(xiàn)Datalist的分列顯示功能
工程業(yè)績--用for循環(huán)代替了DataList多列顯示,得到2行四列的表格,需要內(nèi)存表的8行數(shù)據(jù)2009-12-12
asp.net下Request.QueryString取不到值的解決方法
2008-01-01
Visual Studio 2015和 .NET Core安裝教程
這篇文章主要為大家詳細(xì)介紹了Visual Studio Community 2015和 .NET Core安裝圖文教程,感興趣的小伙伴們可以參考一下2016-07-07
ASP.NET?MVC使用jQuery?ui的progressbar實(shí)現(xiàn)進(jìn)度條
這篇文章介紹了ASP.NET?MVC使用jQuery?ui的progressbar實(shí)現(xiàn)進(jìn)度條的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-08-08

