Javascript 将日期格式化为输入中的用户类型dd/mm/yyyy
我正在寻找一种解决方案,为用户提供一个友好的字段,根据他们键入的内容格式化日期。我注意到很多应用程序都是这样设置的。例如,当用户键入前两个数字时,它将插入一个/。我愿意接受任何建议。非常感谢。这只是一种标准输入类型:Javascript 将日期格式化为输入中的用户类型dd/mm/yyyy,javascript,jquery,html,Javascript,Jquery,Html,我正在寻找一种解决方案,为用户提供一个友好的字段,根据他们键入的内容格式化日期。我注意到很多应用程序都是这样设置的。例如,当用户键入前两个数字时,它将插入一个/。我愿意接受任何建议。非常感谢。这只是一种标准输入类型: <input type="text" name="input" placeholder="MM/DD/YYYY" required pattern="(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9]
<input type="text" name="input" placeholder="MM/DD/YYYY" required
pattern="(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))"
title="Enter a date in this format MM/DD/YYYY"/>
这似乎对我很有效:
$(“输入[name='birthdate']:first”).keyup(函数(e){
var key=String.fromCharCode(e.keyCode);
如果(!(key>=0&&keydeplicate SO)是我们帮助您编写代码的地方。向我们展示一些努力,告诉我们出了什么问题,我们可以提供帮助。这是不可能的,用户可能会键入任何不一定与date@GeorgeJempty不完全正确:输入[type=date]
可能重复的
$("input[name='birthdate']:first").keyup(function(e){
var key=String.fromCharCode(e.keyCode);
if(!(key>=0&&key<=9))$(this).val($(this).val().substr(0,$(this).val().length-1));
var value=$(this).val();
if(value.length==2||value.length==5)$(this).val($(this).val()+'/');
});