多个fiield中的InnerHTML和多个错误语句

时间:2018-03-30 09:03:55

标签: javascript html input onblur

我无法尝试使用onblur处理程序验证表单。

我要做的是获取名字和姓氏字段,如果字段为空白,如果小于5,超过18个字符,或者用户输入数字,则显示错误消息。

我希望能够仅使用一个函数来执行此操作,因此我不需要为单独的函数执行此操作。

例如:

function ValidateName(field) {
  var field = field.value;
  var output = document.getElementById("fnameError");
   if (field == "")
 {
   output = "field can’t be blank.";
   return false;
 }
   else
 {
   output = "";
 }
}
<form>
<input type="Text" id="Fname" onblur="ValidateName(this)">
<span id="fnameError"></span>
</form>

2 个答案:

答案 0 :(得分:1)

根据问题你的答案。

function ValidateName(field) {
  var output = document.getElementById("fnameError");
   if (field.value == "")
 {
   output.innerHTML = "field can’t be blank.";
 }
   else
 {
   output.innerHTML = "";
 }
}
<form>
<input type="Text" id="Fname" onblur="ValidateName(this)">
<span id="fnameError"></span>
</form>

根据我的回答发表的评论你的答案。

function ValidateName() {
  var outputF = document.getElementById("fnameError");
  var outputL = document.getElementById("lnameError");
  var outputB = document.getElementById("BothError");
  var field1 =  document.getElementById("Fname");
  var field2 =  document.getElementById("Lname");
  
    if (field1.value == "" && field2.value == "")
 {
   outputF.innerHTML = "";
   outputB.innerHTML = "No field can be left blank.";
   outputL.innerHTML = "";
 }
   else if (field1.value !== "" && field2.value == "") 
{
   outputF.innerHTML = "";
   outputB.innerHTML = "";
   outputL.innerHTML = "field can’t be blank.";
   }
   else if (field1.value == "" && field2.value !== "")
   {
   outputF.innerHTML = "field can’t be blank.";
   outputB.innerHTML = "";
   outputL.innerHTML = "";
   }
else {
   outputF.innerHTML = "";
   outputB.innerHTML = "";
   outputL.innerHTML = "";
 }
}
<form>
<input type="Text" id="Fname" onblur="ValidateName()">
<span id="fnameError"></span>
<br><br>
<input type="Text" id="Lname" onblur="ValidateName()">
<span id="lnameError"></span>
<br><br>
<span id="BothError"></span>
</form>

答案 1 :(得分:0)

you can try this also

function validateform(){  
var name=document.myform.name.value;  

if (name==null || name==""){  
  alert("Name can't be blank");  
  return false;  
}
else if(name.length < 5){
    alert("name must be atleast 8 characters long");
    return false;
}
else if(name.length <18){
alert("text must be more than 18 characters");
return false;
}

}  

<form name="myform" method="post" action="" onsubmit="return validateform()" >  
Name: <input type="text" name="name"><br/>   
<input type="submit" value="register">  
</form>