请问js如果有两个输入框,某个框输入错误就只清空这个框,另一个框的值不变,要怎样做?
<html><head><title>NewDocument</title></head><body>日期:<inputid="a1"name="a2"type="tex...
<html>
<head>
<title> New Document </title>
</head>
<body>
日期: <input id="a1" name="a2" type="text" value="" onChange="formatDate(this.value);"/>
日期: <input id="b1" name="b2" type="text" value="" onChange="formatDate(this.value);"/>
</body>
<script>
function formatDate(date_OK){
if (date_OK.length==4){
date_OK='20'+date_OK.substring(0,2)+"-"+date_OK.substring(2,5)+"-01";
alert(date_OK);
} else if (date_OK.length==6){
date_OK='20'+date_OK.substring(0,2)+"-"+date_OK.substring(2,4)+"-"+date_OK.substring(4,7);
alert(date_OK);
} else if (date_OK.length==10){
alert(date_OK);
} else {
this.value="";
alert(date_OK);
}
}
</script>
</html>
是不是要写两个函数,来判断不同的ID 展开
<head>
<title> New Document </title>
</head>
<body>
日期: <input id="a1" name="a2" type="text" value="" onChange="formatDate(this.value);"/>
日期: <input id="b1" name="b2" type="text" value="" onChange="formatDate(this.value);"/>
</body>
<script>
function formatDate(date_OK){
if (date_OK.length==4){
date_OK='20'+date_OK.substring(0,2)+"-"+date_OK.substring(2,5)+"-01";
alert(date_OK);
} else if (date_OK.length==6){
date_OK='20'+date_OK.substring(0,2)+"-"+date_OK.substring(2,4)+"-"+date_OK.substring(4,7);
alert(date_OK);
} else if (date_OK.length==10){
alert(date_OK);
} else {
this.value="";
alert(date_OK);
}
}
</script>
</html>
是不是要写两个函数,来判断不同的ID 展开
2个回答
展开全部
<!-- 你给formatDate传入的this.value是字符串不是input对象,你直接传入this当前对象,然后在函数内操作对象。-->
<html>
<head>
<title> New Document </title>
</head>
<body>
日期: <input id="a1" name="a2" type="text" value="" onChange="formatDate(this);"/>
日期: <input id="b1" name="b2" type="text" value="" onChange="formatDate(this);"/>
</body>
<script>
function formatDate(date_OK){
if (date_OK.value.length==4){
date_OK.value='20'+date_OK.value.substring(0,2)+"-"+date_OK.value.substring(2,5)+"-01";
alert(date_OK.value);
} else if (date_OK.value.length==6){
date_OK.value='20'+date_OK.value.substring(0,2)+"-"+date_OK.value.substring(2,4)+"-"+date_OK.value.substring(4,7);
alert(date_OK.value);
} else if (date_OK.value.length==10){
alert(date_OK.value);
} else {
this.value="";
alert(date_OK.value);
}
}
</script>
</html>
2016-06-13
展开全部
你现在这样稍微改动一下就行了。
onchange = "formatDate(this.value)"
这边改成
formatDate(this)
function formDate(obj){
//这里obj代表input,清空文本框用obj.value="",这样就只清当前的input
//用obj.value == ""来判断。
}
追问
js有没有函数判断这个值是不是有效的日期?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询