1. 程式人生 > >HTML中INPUT type="date"標籤如何賦值注意問題

HTML中INPUT type="date"標籤如何賦值注意問題

現在的html5 input標籤支援type="date" 顯示有日期的日曆控制元件,一行簡單的程式碼就能顯示出一個日曆控制元件,但是有的時候需要給它一個預設的日期值,這個時候可能就要用到val(), attr("value","")等方法,有可能很多人會不成功,其實並不是這個標籤不支援這些賦值的方法,而是賦值的時候字串的格式有問題。

解決辦法:一說就明白,一般我們用new Date().getMonth() new Date().getDate()方法獲得日期的時候如果日期與月數小於10,則預設顯示為1,2,3,4,5,6,7,8,9 所以日期的格式可能就是2013-9-5。而Input type="date"標籤中支援顯示的日期格式為2013-09-05,把這個值傳給input標籤就能夠正常顯示日期的值了,所以這裡要加一個判斷,如果月數或者日期數是小於10的,就要在其前面新增數字0構成字串,這樣就能賦值後正常顯示了。

var now = new Date();
alert(now.getDate()+'-'+now.getMonth());
//格式化日,如果小於9,前面補0
var day = ("0" + now.getDate()).slice(-2);
//格式化月,如果小於9,前面補0
var month = ("0" + (now.getMonth() + 1)).slice(-2);
//拼裝完整日期格式
var today = now.getFullYear()+"-"+(month)+"-"+(day) ;
//完成賦值
$('#createStartTime').val(today);