我一直在javascript和html中尝试表单验证。我坚持使用onblur()。想法是用户输入他的名字。如果他在没有输入任何内容的情况下离开输入区域(文本框),则应显示错误消息。 但根据我的下面的代码,即使我输入任何内容,它仍然显示警报没有输入名称。
<form>
<input type="text" id="fn" value="First Name" onfocus="fnm()" onblur="chfnm()"/>
</form>
function fnm()
{
document.getElementById("fn").value=""; //clears default value of textbox
}
function chfnm()
{
var f=document.getElementById("fn");
for(var i=0;i<f.length;i++)
{
if(i!=(f.length-1))
fname= fname +f.elements[i].value +"<br>";
else
fname= fname+ f.elements[i].value;
}
if(fname=="") //error is fname is always an empty string
{
alert("Please fill your first name");
document.getElementById("fn").focus();
}
}
我是javascript的新手,所以任何新的想法都会受到赞赏和欢迎。
答案 0 :(得分:0)
只需添加html5的必需标记,就不需要添加额外的java脚本函数来检查
答案 1 :(得分:0)
如果您想验证用户是否输入了该名称,您只需使用此代码即可。如果是这样,您将使用for loop
添加额外的代码。
function fnm(){
document.getElementById("fn").value=""; //clears default value of textbox
}
var fname = "";
function chfnm(){
fname = document.getElementById("fn").value;
if(fname==""){
alert("Please fill your first name");
document.getElementById("fn").focus();
}else{
alert("your name " + fname);
}
}