在 jquery 中设置 <input type="date"... 的值
Posted
技术标签:
【中文标题】在 jquery 中设置 <input type="date"... 的值【英文标题】:Set the value of <input type="date"... in jquery 【发布时间】:2013-05-29 04:51:06 【问题描述】:不明白为什么这不起作用。我有一个简单的 'input type="date"' 字段......
<input type="date" name="Date"/>
每当使用此功能加载页面时,我都会尝试将值设置为今天的日期...
function setDate(date)
z=$(date).attr('value');
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
if(dd<10)dd='0'+dd
if(mm<10)mm='0'+mm
today = yyyy+'-'+mm+'-'+dd;
$(date).attr('value',today);
我已经完成了正常的调试,我知道这个函数正在被调用,而且我知道变量“今天”实际上以“年年月日-月日日”的形式保存了今天的日期。我尝试过使用所有不同类型的日期格式(dd/mm/yyyy、dd-mm-yyyy 等)
知道为什么这不起作用吗?
【问题讨论】:
试试$(date).val(today)
。
另外,使用prop
。 attr
已弃用。
另外,date
是什么?我假设它已经是一个 DOM 元素或选择器,对吧?否则$(date)
一定是问题所在。
这是日期的id,我忘了在我的例子中包含它。
@Colleen - 您在哪里看到 attr 已被弃用?这对我来说是个新闻。 attr 和 prop 相似但不可互换。每个都有自己的用例。
【参考方案1】:
对于输入,只需使用 .val()
读取值
z=$(date).val();
设置值
$(date).val(today);
【讨论】:
@Hoser 如果这行得通,你应该给 Sushanth 答案。 浏览器不支持日期输入类型会怎样? 它每次都给null,日期不被获取@Sushanth-- @sushanth 我的日期值采用 yyyy-mm-dd 的形式...每次用户通过时,它都存储在一个变量“dat”中......例如:var dat= “2013-05-16”,我必须在日期选择器中将此日期设置为默认日期...我尝试了 $(date).val(dat)...但它不起作用;【参考方案2】:$('input[name=Date]').val(today);
【讨论】:
以上是关于在 jquery 中设置 <input type="date"... 的值的主要内容,如果未能解决你的问题,请参考以下文章
在Jquery Datepicker中设置日期的初始值[重复]
Javascript/jQuery:在多个选择中设置值(选择)