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构成字符串,这样就能赋值后正常显示了。


[javascript]  view plain  copy
  1. var now = new Date();  
  2. alert(now.getDate()+'-'+now.getMonth());  
  3. //格式化日,如果小于9,前面补0  
  4. var day = ("0" + now.getDate()).slice(-2);  
  5. //格式化月,如果小于9,前面补0  
  6. var month = ("0" + (now.getMonth() + 1)).slice(-2);  
  7. //拼装完整日期格式  
  8. var today = now.getFullYear()+"-"+(month)+"-"+(day) ;  
  9. //完成赋值  
  10. $('#createStartTime').val(today);  

猜你喜欢

转载自blog.csdn.net/yijiupingfan0914/article/details/80416979
今日推荐