每次输入新输入时,如何在'onsubmit'表单中刷新功能?

时间:2014-07-06 22:13:27

标签: php html forms repeat onsubmit

我正在编写一个程序,要求用户输入他们的姓名,电子邮件,电话号码'

<script>
function validate1(){
alert ("validate1 called");
var elemFname = document.getElementById("idFname");
var elemFnameValue=elemFname.value;
var elemFnameErr = document.getElementById("idFnameErr");

var elemLname = document.getElementById("idLname");
var elemLnameValue=elemLname.value;
var elemLnameErr = document.getElementById("idLnameErr");

var elemidEmail = document.getElementById("idEmail");
var elemidEmailValue=elemidEmail.value;
var elemidEmailErr = document.getElementById("idEmailErr");

var elemidPhone = document.getElementById("idPhone");
var elemidPhoneValue=elemidPhone.value;
var elemidPhoneErr = document.getElementById("idPhoneErr");


if (elemFnameValue==null || elemFnameValue=="" || elemLnameValue==null ||    elemLnameValue=="" || elemidEmailValue==null || elemidEmailValue=="" ||      elemidPhoneValue==null || elemidPhoneValue==""){


if (elemFnameValue==null || elemFnameValue=="" ){
    elemFnameErr.innerHTML="Require Field";
}
if (elemLnameValue==null || elemLnameValue==""){
        elemLnameErr.innerHTML="Require Field";
}
if (elemidEmailValue==null || elemidEmailValue==""){
        elemidEmailErr.innerHTML="Require Field";
}
if (elemidPhoneValue==null || elemidPhoneValue==""){
        elemidPhoneErr.innerHTML="Require Field";
}

    return false;
}       

else{
    return true;
}

}

<body>
<form onsubmit="return validate1()" action = "contactinfo.php">
First Name<span style="color:red">*</span><input type="text" name = "Fname" size = "10"  id="idFname" />
    <span id="idFnameErr" style="color:red"></span><br>
Last Name<span style="color:red">*</span>
    <input type="text" name = "Lname" size = "10" id="idLname" />
    <span id="idLnameErr" style="color:red"></span><br>
Email<span style="color:red">*</span>
    <input type="text" name = "InpEmail" size = "10" id="idEmail" />
    <span id="idEmailErr" style="color:red"></span><br>
Phone<span style="color:red">*</span>
    <input type="text" name = "InpPhone" size="10" id="idPhone" />
    <span id="idPhoneErr" ></span><br>
<input type="submit" name="submit" value="Submit" /><br>


</form>
</body>

我试图弄清楚如何刷新输入&#39; InpEmail,InpPhone,Fname,Lname的函数validate()及其变量(例如elemFname,elemLname)的值。

现在,例如,如果我没有在&#39;文本输入上放任何内容&#39;对于名字,这将返回我的假“&#39;给出输出&#34;要求字段&#34;通过validate();旁边的相应文本框旁边,下次我填写First Name的文本框,并将其他文本框(电话,电子邮件,姓氏)留空,输出&#34;必填字段&#34;仍会保留在&#39;名字&#39;的文本框旁边除了现在空的其他人。

请帮帮我。

2 个答案:

答案 0 :(得分:0)

将验证代码添加到每个输入的onchange中。

<input type="text" name = "Lname" size = "10" id="idLname" onchange="validate1();"/>

如果你走这条路,你可能想要对每个输入进行验证

答案 1 :(得分:0)

您可以在if语句中添加备用条件:

if (elemFnameValue==null || elemFnameValue=="" ){
    elemFnameErr.innerHTML="Require Field";
}else{
   elemFnameErr.innerHTML="";
}

但我会花一点时间学习angular.js或jquery.validate()

从长远来看,它将为您节省大量时间