webapp中的日期选择

你是否在开发webapp时,选择用哪种第三方日期选择控件绞尽脑汁?

其实不用那么麻烦,现在移动端都是WebKit内核,支持HTML5,其实只要弱弱的将input中将type="date"就OK了,操作系统会自动识别为日期类型并调用系统自带的日期选择。不用在意日期控件的样式不统一,因为who cares?o(╯□╰)o,大家都是盯着自己的手机,谁选个日期还去比较其他手机呢?

最近看见有个比较牛逼的日期选择插件mobiscroll,网上的口碑特别好,我也下载过来玩了一下,之所以说他牛逼不完全是因为他高仿IOS和安卓的日期选择样式,而是他的售价居然高达800多$,好贵呀,而且看一下目录:5个css文件,7个js文件,尼玛这么多,当用户的流量不要钱么?

下面具体描述如何用HTML自带的date控件

HTML:

1 <input id="start_time" name="start_time" type="date" class="form-control" />

JS:
 1 $(‘#start_time‘).val(new Date());//设置当前日期为控件默认值 

当然,写到这里有些童鞋会问我,它是date类型的,它的值可能是 Fri Apr 03 2015 15:15:00 GMT+0800 (中国标准时间),这堆玩意怎么存数据库啊,能不能转换为按我需要的string类型格式,当然可以!

JS:

 1 //日期格式化 formatStr:yyyy-MM-dd
 2 Date.prototype.Format = function(formatStr)   
 3   {   
 4       var str = formatStr;   
 5       var Week = [‘日‘,‘一‘,‘二‘,‘三‘,‘四‘,‘五‘,‘六‘];  
 6       var month=this.getMonth()+1;
 7       str=str.replace(/yyyy|YYYY/,this.getFullYear());   
 8       str=str.replace(/yy|YY/,(this.getYear() % 100)>9?(this.getYear() % 100).toString():‘0‘ + (this.getYear() % 100));      
 9       str=str.replace(/MM/,month>9?month.toString():‘0‘ + month);   
10       str=str.replace(/M/g,month);   
11       str=str.replace(/w|W/g,Week[this.getDay()]);   
12       str=str.replace(/dd|DD/,this.getDate()>9?this.getDate().toString():‘0‘ + this.getDate());   
13       str=str.replace(/d|D/g,this.getDate());   
14       str=str.replace(/hh|HH/,this.getHours()>9?this.getHours().toString():‘0‘ + this.getHours());   
15       str=str.replace(/h|H/g,this.getHours());   
16       str=str.replace(/mm/,this.getMinutes()>9?this.getMinutes().toString():‘0‘ + this.getMinutes());   
17       str=str.replace(/m/g,this.getMinutes());      
18       str=str.replace(/ss|SS/,this.getSeconds()>9?this.getSeconds().toString():‘0‘ + this.getSeconds());   
19       str=str.replace(/s|S/g,this.getSeconds());     
20       return str;   
21   }   
22 
23 $(‘#start_time‘).val(new Date().Format("yyyy-MM-dd"));//yyyy/MM/dd也可以,分隔号随你


总结:

技术的更新对我们开发者是有利的应当去尝试,特别在移动端可以充分的发挥HTML5的潜力,不要循规蹈矩的沿用第三方组件,移动端的性能就像个小娃娃,经不起大风大浪,我们要好好利用HTML5为我们开发者简化工作而提供的标签属性,尽可能少的加载js等第三方的组件。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。