<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 20,comments - 6,trackbacks - 0
    以前老師的。
    轉來。
    -----------------

    JSP開發(fā)時, 在頁面中格式化和解析日期始終是個頭疼的事情. 可以用JSTL和JavaScript搞定.

    1. JSTL格式化和解析日期

    格式化日期:

    <fmt:formatDate value="${model.date}" pattern ="yyyy-MM-dd" > 

    或者 

    <fmt:formatDate value="<%=new java.util.Date() %>" pattern ="yyyy-MM-dd" /> 

    取得request參數(shù): 

    <c:out value="param.參數(shù)名"/> 

    jstl格式化日期標簽收藏
    <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
    <%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %> 

    <fmt:parseDate value="${param.date}" var="date" pattern="yyyy/MM/dd:HH:mm:ss>
    <fmt:parseDate value="${param.isoDate}" var="isoDate" pattern="yyyyMMdd'T'HHmmss"> 

    The input parameters must match the patterns, or the JSP will thrown an exception. This page does no error handling. 

    Input parameters:
    Date:    
    2004/04/01:13:30:00   Java format: Thu Apr 01 13:30:00 CST 2004
    isoDate: 20040531T235959       Java format: Mon May 
    31 23:59:59 CDT 2004 

    Dates
    Tag Output 
    Attribute: value; required. Tag has no body. 
    <fmt:formatDate value="${date}" type="both"/> 

    2004-4-1 13:30:00  
    <fmt:formatDate value="${isoDate}" type="both"/> 

    2004-5-31 23:59:59  
    Attribute: type; optional. Indicates what to print: date, time, or both. 
    <fmt:formatDate value="${date}" type="date"/> 

    2004-4-1  
    <fmt:formatDate value="${isoDate}" type="time"/> 

    23:59:59  
    Attribute: dateStyle; optional. Varies the date format. 
    <fmt:formatDate value="${isoDate}" type="date" dateStyle="default"/> 

    2004-5-31  
    <fmt:formatDate value="${isoDate}" type="date" dateStyle="short"/> 

    04-5-31  
    <fmt:formatDate value="${isoDate}" type="date" dateStyle="medium"/> 

    2004-5-31  
    <fmt:formatDate value="${isoDate}" type="date" dateStyle="long"/> 

    2004年5月31日  
    <fmt:formatDate value="${isoDate}" type="date" dateStyle="full"/> 

    2004年5月31日 星期一  
    Attribute: timeStyle; optional. Varies the time format. 
    <fmt:formatDate value="${isoDate}" type="time" timeStyle="default"/> 

    23:59:59  
    <fmt:formatDate value="${isoDate}" type="time" timeStyle="short"/> 

    下午11:
    59  
    <fmt:formatDate value="${isoDate}" type="time" timeStyle="medium"/> 

    23:59:59  
    <fmt:formatDate value="${isoDate}" type="time" timeStyle="long"/> 

    下午11時59分59秒  
    <fmt:formatDate value="${isoDate}" type="time" timeStyle="full"/> 

    下午11時59分59秒 CDT  
    Attribute: pattern; optional. Inidcates date
    /time custom patterns. 
    <fmt:formatDate value="${date}" type="both" pattern="EEEE, MMMM d, yyyy HH:mm:ss Z"/> 

    星期四, 四月 
    12004 13:30:00 -0600  
    <fmt:formatDate value="${isoDate}" type="both" pattern="d MMM yy, h:m:s a zzzz/> 


    2. JavaScript 格式化

    /*
      將String類型解析為Date類型.
      parseDate('2006-1-1') return new Date(2006,0,1)
      parseDate(' 2006-1-1 ') return new Date(2006,0,1)
      parseDate('2006-1-1 15:14:16') return new Date(2006,0,1,15,14,16)
      parseDate(' 2006-1-1 15:14:16 ') return new Date(2006,0,1,15,14,16);
      parseDate('2006-1-1 15:14:16.254') return new Date(2006,0,1,15,14,16,254)
      parseDate(' 2006-1-1 15:14:16.254 ') return new Date(2006,0,1,15,14,16,254)
      parseDate('不正確的格式') retrun null
    */

    function parseDate(str){
      
    if(typeof str == 'string'){
        
    var results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}*$/);
        
    if(results && results.length>3)
          
    return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3])); 
        results 
    = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}+(\d{1,2}):(\d{1,2}):(\d{1,2}*$/);
        
    if(results && results.length>6)
          
    return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]),parseInt(results[4]),parseInt(results[5]),parseInt(results[6])); 
        results 
    = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}+(\d{1,2}):(\d{1,2}):(\d{1,2})\.(\d{1,9}*$/);
        
    if(results && results.length>7)
          
    return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]),parseInt(results[4]),parseInt(results[5]),parseInt(results[6]),parseInt(results[7])); 
      }

      
    return null;
    }
     

    /*
      將Date/String類型,解析為String類型.
      傳入String類型,則先解析為Date類型
      不正確的Date,返回 ''
      如果時間部分為0,則忽略,只返回日期部分.
    */

    function formatDate(v){
      
    if(typeof v == 'string') v = parseDate(v);
      
    if(v instanceof Date){
        
    var y = v.getFullYear();
        
    var m = v.getMonth() + 1;
        
    var d = v.getDate();
        
    var h = v.getHours();
        
    var i = v.getMinutes();
        
    var s = v.getSeconds();
        
    var ms = v.getMilliseconds();   
        
    if(ms>0return y + '-+ m + '-+ d + ' ' + h + ':' + i + ':' + s + '.' + ms;
        
    if(h>0 || i>0 || s>0return y + '-+ m + '-+ d + ' ' + h + ':' + i + ':' + s;
        
    return y + '-+ m + '-+ d;
      }

      
    return '';
    }
    posted on 2009-03-27 09:29 Johnhe 閱讀(2463) 評論(0)  編輯  收藏 所屬分類: javascript
    主站蜘蛛池模板: 午夜国产精品免费观看 | 亚洲真人无码永久在线观看| 永久免费看bbb| **俄罗斯毛片免费| sss日本免费完整版在线观看| 亚洲精品自在线拍| 亚洲av无码不卡| 亚洲日本乱码一区二区在线二产线| 午夜免费福利在线| 18禁美女裸体免费网站| 伊人免费在线观看| 黄色a级片免费看| 美景之屋4在线未删减免费| 亚洲国产美女视频| 亚洲精品无码久久毛片波多野吉衣 | 日本免费一区二区在线观看| 成人精品一区二区三区不卡免费看| 国产高清视频免费在线观看| 免费一级特黄特色大片| 黄页网站在线免费观看| 青青草97国产精品免费观看| 国产精品极品美女自在线观看免费 | 亚洲日韩涩涩成人午夜私人影院 | 亚洲另类无码专区首页| 99亚洲精品卡2卡三卡4卡2卡| 美女黄频视频大全免费的| 一级毛片大全免费播放下载 | 亚洲av无码专区国产乱码在线观看 | 国产美女在线精品免费观看| 看全色黄大色大片免费久久| 亚洲国产综合无码一区二区二三区| 亚洲午夜福利精品久久 | 99精品视频在线观看免费| 亚洲免费闲人蜜桃| 亚洲国产成人久久一区久久| 亚洲AV无码码潮喷在线观看| 亚洲AV日韩综合一区尤物| 国产免费一区二区视频| 日韩人妻无码免费视频一区二区三区| 亚洲日本一区二区三区在线不卡| 亚洲第一香蕉视频|