[精讚] [會員登入]
34638

[HTLM5] 表單時間日期date/time輸入類型

介紹HTML5和時間有關的輸入類型date/datetime/datetime-local/month/time/week

此文完整連結 http://n.sfs.tw/10309

複製連結 [HTLM5] 表單時間日期date/time輸入類型@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 14:13:15 最後編修
2016-11-27 11:16:31 By 張○○
 

此系列文共分三部分,分別是

  [HTLM5] 表單color、email、url、search、tel輸入類型 
  [HTLM5] 表單date/time輸入類型
  [HTLM5] 表單number和range輸入類型

大家已知傳統表單input type有text, password, radio, checkbox等,例如一個登入的表單:

<input type="text" value="這是text類型" name="atextbox" />
<input type="password" value="這是password類型" name="atpassword" />

上面的input type有兩種,一個是text,另一個是password。這是傳統的種類,用起來很方便,但是html5有更方便類型,要知道善用:

  • color
  • date
  • datetime
  • datetime-local
  • email
  • month
  • number
  • range
  • search
  • tel
  • time
  • url
  • week

接下來介紹和時間有關的date/datetime/datetime-local/month/time/week 等類型。

date 類型

  <input type="date" name="bday">

Chrome長像

傳出的值
2016-03-01

datetime 類型

此類型已作廢,無瀏器支援

datetime-local 類型

 <input type="datetime-local" name="bdaytime">

Chrome長像
多一個時間的欄位可以輸入

傳出的值
2016-03-17T08:00

time 類型

 <input type="time" name="usr_time">

Chrome長像

傳出的值
23:01
02:58

month 類型

 <input type="month" name="bdaymonth" />

Chrome長像

傳出的值
2016-03

week 類型

 <input type="week" name="week_year">

Chrome長像

傳出的值
2016-W09
2016-W11

不支援html5的瀏覽器怎麼辦?

沒有支援html5的瀏覽器都會把這些類型當作是text輸出。

優缺點討論

以上有關時間的類型一出來,你有沒有覺得很興奮啊,不過我要告訴你們一個不幸的消息,就是IE及Firefox不支援:對這兩個瀏覽器來說,就只是一個單純的text欄位。也許使用者會放大訣說反正我只用chrome,但對網站的設計者來說,只要IE及Firefox不支援,這個type就形同作廢。還好有人有做了解決方法[2]。

不支援的瀏覽器處理方式

當不支援date等類型的瀏覽器需要使用日期選擇器(或時間選擇器)的話,可使用下面的判斷方法(以date舉例):

 if ( $('[type="date"]').prop('type') != 'date' ) {
  // 不支援date等類型的瀏覽器,類型是date 但是property不是'date'。
  // 在這裡放入其他的datetime picker,例如 jquery ui 的datetime picker
    $('[type="date"]').datepicker();
 }

參考資料

[1] W3C HTML5 Input type

[2] how-to-make-input-type-date-supported-on-all-browsers-any-alternatives


原文 2016-03-15 10:18:45

你可能感興趣的文章

[HTML] CSS中的折字換行或不換行(防止容器破壞) 使用者留言時故意來用一串長長的且沒有任何空白的長字串,把你的容器破壞得很難看...

網頁的標頭(head)搜尋引擎和FB最佳化 網頁的標頭(head)搜尋引擎和facebook最佳化

讓radio box 或checkbox 好按 在行動裝置下,radio box及checkbox變得很難按得到

[CSS] 將多張圖片合併,製作css spirte 網站中有很多的小圖,如果能把他們合併後再用CSS取用,就能大幅的提升網路效能。

[HTML5] script 的新增屬性 defer, async script 的新增屬性 defer, async

[HTLM5] 表單color、email、url、search、tel輸入類型 介紹HTML5好用的輸入類型:color、email、url,以及兩個形同雞肋的類型search、tel..

關閉瀏覽器表單的自動完成autocomplete 什麼是自動完成?就是當我們在網頁的輸入文字欄位中打入文字時,瀏覽器會把曾輸入過歷史記錄中找出來讓我們選擇。

[HTLM5] html元件上的 data-* 屬性 html5 中元件中多了一個 data-*的屬性,這個屬性超級好用

如何讓瀏覽器每次都重新載入css、js、圖檔 不管怎麼刷新網頁,他總是跑出來舊的內容,這對開發的人來說很困擾...

[CSS] 背景 background css 中最常用的特性(property)之一就是 background ,這個有什麼好難的?事實上 backgroun

我有話要說


限制:留言最高字數1000字,超過部分會被截掉。請注意:留言不可帶有網址,會被濾掉。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

使用Google尋找你的手機 這近發現google竟然可以用來找android的手機,而且不需要經過什麼設定或安裝軟體。

SELinux 常用指令和檔案 在Redhat系列中,Centos5以後加入了selinux,他並沒有這麼可怕,不必每次看到Selinux ,就想把他

安裝SPHINX支援中文 新版本的 sphinx 和舊版不同,網路上很多範例和教學是不能用的。此文是安裝和設定方法分享

NETCRAFT發現你的網站及作業系統 NETCRAFT可以發現你的網站及作業系統

精讚的版面變化 ▓此文僅作為舊文的記錄▓ 這篇文章為了紀念改版完成而撰寫。 原本的部落格是民國97年的作品,那時還是用舊有的技術來寫,很