簡體   English   中英

jQuery將日期從mm / dd / yy轉換為yyyy-dd-mm

[英]jquery to convert date from mm/dd/yy to yyyy-dd-mm

我收到的ajax響應的日期格式為mm / dd / yy。 如何使用jquery將其轉換為yyyy-mm-dd格式? jQuery是否具有內部功能來做到這一點?

簡單,無需檢查輸入(JavaScript,無jQuery):

var d        = '01/25/90';   // as an example
var yy       = d.substr(6,2);
var newdate  = (yy < 90) ? '20' + yy : '19' + yy;
    newdate += '-' + d.substr(0,2) + '-' + d.substr(3,2); //1990-01-25

那種事情不是jQuery旨在促進的。 jQuery庫主要是關於DOM操作的,對代碼結構的便利性做出了各種讓步。

您需要做的是將傳入地址拆分為文本,然后將其重構為兼容的JavaScript可解析日期,或者僅從字符串中獲取年,月和日,然后使用javascript“ Date()”構造函數這些是數字值。此代碼將為您提供日期格式的日期:

這段代碼將為您提供日期格式的日期:

function toDate(str) {
  var rv = null;
  str.replace(/^(\d\d)\/(\d\d)\/(\d\d)\$/, function(d, yy, mm, dd) {
    if (!d) throw "Bad date: " + str;
    yy = parseInt(yy, 10);
    yy = yy < 90 ? 2000 + yy : 1900 + yy;
    rv = new Date(yy, parseInt(mm, 10) - 1, parseInt(dd, 10));
    return null;
  });
  return rv;
}
<script>

    $(document).ready(function(){   

        $("#date").change(function(){
            var $d = $(this).val();  
            var $yy = $d.substr(6,4);
            var $dd = $d.substr(3,2);
            var $mm = $d.substr(0,2);
            var $newdate = $yy + '-' + $mm + '-' + $dd; 
            $("#date").val($newdate);
        });
    })

</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM