我希望在按下提交按钮时,如果输入不正确(即只有字母)而不是警告(id =“fn_warn”)变得易受影响,但代码不起作用。我认为他们是getElementById的问题。 函数isAlpha检查值是否仅限字母。getElementById怎么回事
<!DOCTYPE HTML>
<head>
</head>
<body>
<form>
First name
<input id="first_name" type="text"/>
<p id="fn_warn" style=" visibility: hidden; color: red;">#Please enter a valid name...</p>
<input class="button" onclick="validate();" type="submit" value="Submit" />
<input class="button" type="reset" />
</form>
</body>
</html>
<script>
function validate(){
var submit=false;
var x = document.getElementById("first_name");
if (isAplha(x.value)){
submit=true;
} else {
var y = document.getElementById("fn_warn");
y.style.visibility = "visible";
}
}
function isAlpha(value){
if (value.match(/^[A-Za-z]+$/)){
return true;
} else {
return false;
}
}
</script>
您是否检查过浏览器控制台的错误?你在“validate”函数中得到错误的“isAlpha”函数的名字;如果它真的在你的代码中那样会产生一个错误。另外,“提交”变量的目的是什么?如果要控制表单是否已提交,那是行不通的。您必须从“validate”函数返回false,以防止默认操作。 – Pointy
@Pointy请投票关闭为错字,然后。 –
修正为isAlpha后,在chrome中,txt只是闪烁一会儿,然后再隐藏起来。我怎么解决? – ABCoder