datetime-local Input 秒數問題

當使用datetime-local的input時,直接帶入「包含秒數」的value,例如:2022-12-23 11:49:22,表單可以送出,且資料包含秒數。但當value是透過JavaScript帶入,送出時就會發現表單顯示「請輸入有效值」的錯誤提示:

左側為html直接帶入value,右側為JavaScript帶入value

Chrome與Firefox皆為如此,在Safari中連左側透過html帶入value的也會出現提示。

到底為什麼沒辦法輸入秒呢?查了一下才知道原來是跟控制增減值的step參數有關。datetime-local的step最小單位是秒,而預設值是60,也就是預設會以一分鐘作為最小可調整的時間的意思。

因此,要解決這個問題,我們只要新增step參數,並設為1就可以囉!

<input type="datetime-local" step="1">

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料