<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

        解決easyui日期時間框ie的兼容的問題

        來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 22:18:14
        文檔

        解決easyui日期時間框ie的兼容的問題

        解決easyui日期時間框ie的兼容的問題:前幾天項目進(jìn)入最后準(zhǔn)備上線階段,測試突然發(fā)現(xiàn)使用easyui的datetimebox插件獲取的時間在ie的時候無法獲取到比當(dāng)前時間還往后的時間,當(dāng)時是這么寫的: $(selector).datetimebox( { formatter : function(date) { var y = dat
        推薦度:
        導(dǎo)讀解決easyui日期時間框ie的兼容的問題:前幾天項目進(jìn)入最后準(zhǔn)備上線階段,測試突然發(fā)現(xiàn)使用easyui的datetimebox插件獲取的時間在ie的時候無法獲取到比當(dāng)前時間還往后的時間,當(dāng)時是這么寫的: $(selector).datetimebox( { formatter : function(date) { var y = dat

        前幾天項目進(jìn)入最后準(zhǔn)備上線階段,測試突然發(fā)現(xiàn)使用easyui的datetimebox插件獲取的時間在ie的時候無法獲取到比當(dāng)前時間還往后的時間,當(dāng)時是這么寫的:

        	$(selector).datetimebox(
        	{
        formatter : function(date) {
        	var y = date.getFullYear();
        	var m = date.getMonth() + 1;
        	var d = date.getDate();
        	var h = date.getHours(); //獲取當(dāng)前小時數(shù)(0-23)
        	var mi = date.getMinutes(); //獲取當(dāng)前分鐘數(shù)(0-59)
        	var s = date.getSeconds(); 
        	var result = y + '-' + (m < 10 ? '0' + m : m) + '-' + (d < 10 ? '0' + d : d)
        + " " + (h < 10 ? '0' + h : h)
        + ":" + (mi < 10 ? '0' + mi : mi);
        	
        	//console.log(result+"--第127行");
        	if(second==false){
        
        	} else {
        result += ":" + (s < 10 ? '0' + s : s);
        	}
        	return result;
        },
         parser : function(s) {
        	var t = Date.parse(s);
        	if (!isNaN(t)) {
        return new Date(t);
        	} else {
        return new Date();
        	}
        }
        	});

        測試谷歌瀏覽器等主流瀏覽器都沒有問題,可以把一開始回顯的時間顯示出來,并可以選擇時間,但是到ie的時候,卻發(fā)現(xiàn)選擇不了時間了,而且回顯的日期也不對,老是當(dāng)前的時間。調(diào)試了好久,才發(fā)現(xiàn)是ie瀏覽器不支持js的parse()方法。parse()方法是把日期解析轉(zhuǎn)換成該日期的毫秒數(shù)。

        formatter是格式化日期的格式。而parser是把解析你格式化的日期,具體寫法看我截的API圖吧:

        因為parse在ie中無法使用~導(dǎo)致在ie下無法解析顯示出格式化過后日期的時間。下面是我自己改過的代碼:

        $(selector).datetimebox( 
         { 
         formatter : function(date) { 
         var y = date.getFullYear(); 
         var m = date.getMonth()+1; 
         var d = date.getDate(); 
         var h = date.getHours(); 
         var min = date.getMinutes(); 
         return y+'-'+(m<10?('0'+m):m)+'-'+(d<10?('0'+d):d)+' '+(h<10?('0'+h):h)+':'+min; 
         }, 
         parser : function(s) { 
         var ss = (s.split(" ")); 
         var ymd = ss[0].split("-"); 
         var hms = ss[1].split(":"); 
         //console.log(ymd+" "+hms); 
         var y = parseInt(ymd[0],10); 
         var m = parseInt(ymd[1],10); 
         var d = parseInt(ymd[2],10); 
         var h = parseInt(hms[0],10); 
         var min = parseInt(hms[1],10); 
         if (!isNaN(y) && !isNaN(m) && !isNaN(d) && !isNaN(h) && !isNaN(min)){ 
         return new Date(y,m-1,d,h,min); 
         } else { 
         return new Date(); 
         } 
         } 
         }); 

        formatter格式化的日期是xxxx-xx-xx xx:x。所以在下面parser解析時先通過日期和時間之間的空格,把他倆分割開來。ss[0]==xxxx-xx-xx,ss[1]==xx:xx。這樣的話再通過-和:的分割,把他們分割成一個個數(shù)字,這樣的話直接寫入new Date()的參數(shù)里就可以返回正確的日期格式了~~好了,經(jīng)測試完美兼容ie這個坑爹的瀏覽器。

        今天在使用時突然發(fā)現(xiàn)這個方法的一個bug,那就是如何一開始datetime時間框沒有數(shù)據(jù)是,會報split錯誤,所以今天修改了下,加了個為空判斷:

        if(s==""){ 
         return new Date(); 
         }else{ 
         //alert(s); 
         var ss = (s.split(" ")); 
         var ymd = ss[0].split("-"); 
         var hms = ss[1].split(":"); 
         //console.log(ymd+" "+hms); 
         var y = parseInt(ymd[0],10); 
         var m = parseInt(ymd[1],10); 
         var d = parseInt(ymd[2],10); 
         var h = parseInt(hms[0],10); 
         var min = parseInt(hms[1],10); 
         if (!isNaN(y) && !isNaN(m) && !isNaN(d) && !isNaN(h) && !isNaN(min)){ 
         return new Date(y,m-1,d,h,min); 
         } else { 
         return new Date(); 
         } 
         } 

        在這要注意s是個字符串類型~所以不能用s==null來做判斷條件~

        以上這篇解決easyui日期時間框ie的兼容的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

        聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        解決easyui日期時間框ie的兼容的問題

        解決easyui日期時間框ie的兼容的問題:前幾天項目進(jìn)入最后準(zhǔn)備上線階段,測試突然發(fā)現(xiàn)使用easyui的datetimebox插件獲取的時間在ie的時候無法獲取到比當(dāng)前時間還往后的時間,當(dāng)時是這么寫的: $(selector).datetimebox( { formatter : function(date) { var y = dat
        推薦度:
        標(biāo)簽: 時間 日期 IE瀏覽器
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 人妻仑刮八A级毛片免费看| 中文字幕 亚洲 有码 在线| 一级毛片a免费播放王色电影| 免费观看男人免费桶女人视频| 亚洲AV无码国产精品色| 91在线视频免费播放| caoporn国产精品免费| 亚洲成人影院在线观看| 久久精品无码免费不卡| 亚洲爆乳无码一区二区三区| 日本高清高色视频免费 | 亚洲av无码成人精品区在线播放| 天天综合亚洲色在线精品| 又粗又硬又黄又爽的免费视频| 香港特级三A毛片免费观看| 91麻豆精品国产自产在线观看亚洲| 国产精品小视频免费无限app| 亚洲男人的天堂www| 美丽姑娘免费观看在线观看中文版| 亚洲视频免费在线观看| 无码国产精品久久一区免费| 亚洲国产综合AV在线观看| 啊v在线免费观看| 中国毛片免费观看| 大学生美女毛片免费视频| 香蕉视频亚洲一级| 亚洲中文字幕无码日韩| 麻豆国产精品免费视频| 国产精品亚洲片在线花蝴蝶| 国产亚洲综合一区柠檬导航| 亚洲免费观看在线视频| 亚洲日韩在线中文字幕综合| 国产亚洲AV无码AV男人的天堂| 国产福利视精品永久免费| 直接进入免费看黄的网站| 国产亚洲综合色就色| 免费的涩涩视频在线播放| 中文字幕手机在线免费看电影| 亚洲国产视频一区| 亚洲精品国产高清不卡在线| 最近免费字幕中文大全视频|