簡體   English   中英

moment.js在firefox中提供無效日期,但在chrome中沒有

[英]moment.js gives invalid date in firefox, but not in chrome

我對moment.js有一個奇怪的問題。 我編寫了一個函數來將時間從utc轉換為德語時間格式,並且所有內容在chrome中都可以正常工作。 但現在我用firefox嘗試了它,在這里我的日期無效。

moment.locale("de");

$('#from').datepicker({
    format: "DD. MMMM YYYY"
});

$('#from').on('change',function() {

    var a = moment($('#from').val(), "DD. MMMM YYYY").format("LLLL");
    var b = moment(a).add(7,'days');


    var localTime  = moment.utc(b).toDate();
    localTime = moment(localTime).format('DD. MMMM YYYY');


    $('#to').val(localTime);

});



$('#to').datepicker({
    format:'DD.MMMM YYYY'
});



$('#sendbtn').on('click',function(){

    /...

    var from = moment(fromfield.value).format();

    var to = moment(tofield.value).format();


    /...

    $('#calendar').fullCalendar( 'gotoDate', from );
    getEventDate(from,to,persons.value);


    }

});

 function getEventDate(start,end,people) {

     var Calendar = $('#calendar');
     Calendar.fullCalendar();
     var Event = {
       title:"Your stay for "+people+" people",
       allDay: true,
       start: start,
       end: end

     };
      filljson(start,end,people);

      Calendar.fullCalendar( 'renderEvent', Event );


}

   / ...

我已經看到了這個答案,但無論如何也無法讓它發揮作用。 有人可以幫我嗎?

從你的問題不清楚代碼的哪一部分拋出錯誤,但可能的罪魁禍首是Moment.js只是委托給Date.parse非ISO-8601字符串: https//github.com/moment/moment /問題/ 1407

因此,假設您使用Moment來解析用戶輸入或未知格式的其他字段,或者解析非ISO-8601的格式,您將必須明確指定格式以獲得有保證的跨瀏覽器行為。 否則你會潛入跨瀏覽器Date.parse - 唯一一致的格式是ISO-8601。

moment(date_string, date_format);

通過時刻解析您的日期時傳遞格式。

moment("25/12/1995", "DD/MM/YYYY");

暫無
暫無

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

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