如何使用纯javascript在日期(2000-12-30)中添加自动斜杠?

如何使用纯javascript在日期(2000-12-30)中添加自动斜杠?,javascript,html,css,validation,Javascript,Html,Css,Validation,我正在尝试在日期字段中添加自动斜杠。 我希望日期格式为yyyy/mm/dd 我想在日期(最后一个数字)之后自动添加斜杠,它不允许键入数字 我想要纯javascript的这个函数 这是我的示例代码 var date=document.getElementById('date'); 函数校验值(str,max){ 如果(str.charAt(0)!='0'| | str='00'){ var num=parseInt(str); 如果(isNaN(num)| num max)num=1; str=

我正在尝试在日期字段中添加自动斜杠。 我希望日期格式为yyyy/mm/dd

我想在日期(最后一个数字)之后自动添加斜杠,它不允许键入数字

我想要纯javascript的这个函数

这是我的示例代码

var date=document.getElementById('date');
函数校验值(str,max){
如果(str.charAt(0)!='0'| | str='00'){
var num=parseInt(str);
如果(isNaN(num)| num max)num=1;
str=num>parseInt(最大toString().charAt(0))
&&num.toString().length==1?'0'+num:num.toString();
};
返回str;
};
date.addEventListener('input',函数(e)
{
this.type='text';
var输入=此值;
如果(/\D\/$/.test(input))input=input.substr(0,input.length-3);
var values=input.split('/').map(函数(v){
返回v.replace(/\D/g'')
});
如果(值[0])值[0]=校验值(值[0],12);
如果(值[1])值[1]=校验值(值[1],31);
var输出=values.map(函数(v,i){
返回v.length==2&&i<2?v+'/':v;
});
this.value=output.join(“”).substr(0,14);
});
试着这样做:

var date=document.getElementById('date');
函数校验值(str,max){
如果(str.charAt(0)!='0'| | str='00'){
var num=parseInt(str);
如果(isNaN(num)| num max)num=1;
str=num>parseInt(最大toString().charAt(0))&&
num.toString().length==1?'0'+num:num.toString();
};
返回str;
};
date.addEventListener('input',函数(e){
this.type='text';
var输入=此值;
如果(/\D\/$/.test(input))input=input.substr(0,input.length-3);
var values=input.split('/').map(函数(v){
返回v.replace(/\D/g'')
});
如果(值[1])值[1]=校验值(值[1],12);
如果(值[2])值[2]=校验值(值[2],31);
var max=4;
var输出=values.map(函数(v,i){
如果(v.length==最大值){
max=2;
返回i

这是否回答了您的问题?不会的。我不想用这种格式打印日期。在输入字段中输入时,它会自动添加斜杠