【发布时间】:2014-01-27 01:30:45
【问题描述】:
如果输入的数据正确,我基本上已经制作了一个注册表单并在每个文本字段旁边包含验证消息,但我想知道一旦用户输入了正确的数据,我如何才能清除此消息,目前它仍然存在呈现在屏幕上。我是一个初学者,所以我觉得我做这件事的路很长,还有关于如何检查用户名是否存在于数据库中的任何建议,就像我用 javascript 检查验证一样。在所有必填字段都有效之前,提交按钮不可用。谢谢
<script type="text/javascript">
function validate()
{
var valid = true;
if (validateUsername() === true && validatePassword() === true &&
validateMobileNumber() === true && validateEmail() === true &&
validateCity() === true && validatePostode() === true &&
validateDOB() === true && validatePasswordVeri() === true)
{
valid = false;
}
if (valid)
{
document.getElementById('submit').disabled = !valid;
}
}
function validateUsername()
{
if (registerform.username.value.length === null || registerform.username.value === "")
{
document.getElementById('uname').innerHTML = "Please enter a username";
return false;
}
return true;
}
function validatePassword()
{
if (registerform.password.value.length >= 6 || registerform.password.value === "")
{
document.getElementById('pword').innerHTML = "Please enter a password which is 6 or more characters";
return false;
}
return true;
}
function validatePasswordVeri()
else if (registerform.passwordVeri.value !== registerform.password.value || register.passwordVeri.value === "")
{
document.getElementById('pwordv').innerHTML = "Passwords do not match";
return false;
}
return true;
}
function validateMobileNumber()
{
if (registerform.mobileNumber.value.length !== 11 || registerform.mobileNumber.value === "")
{
document.getElementById('mobNum').innerHTML = "Please enter a correct mobile number";
return false;
}
return true;
}
function validateEmail()
{
return true;
}
function validatecity()
{
if (registerform.city.value === "")
{
document.getElementById('userCity').innerHTML = "Please enter a city";
return false;
}
return true;
}
function validatePostcode()
{
if (registerform.postCode.value === "")
{
document.getElementById('pCode').innerHTML = "Please enter a post code";
return false;
}
return true;
}
function validateDOB()
{
if (registerform.dateOfBirth.value === "")
{
document.getElementById('dob').innerHTML = "Please enter a post code";
return false;
}
return true;
}
</script>
HTML 表单
<?php
require_once("config.php");
if (!isset($_POST['submit'])) {
?> <!-- The HTML registration form -->
<form name="registerform" method="post">
Please fill the following form to sign up:<br /><br />
Username*: <input type="text" name="username" onKeyup="validate()" onBlur="validateUsername();" /><span id="uname"></span><br />
Password*: <input type="password" name="password" onKeyup="validate()" onBlur="validatePassword();"/><span id="pword"></span><br />
Password Verify*: <input type="password" name="passwordVeri" onKeyup="validate()" onBlur="validatePassword();"/><span id="pwordv"></span><br />
First name: <input type="text" name="firstName" /><br />
Last name: <input type="text" name="lastName" /><br />
Email*: <input type="email" name="emailAddress" onKeyup="validate()" onBlur="validateEmail();"/><span id="emailAdd"></span><br />
Relationship Status*: <select name="relationshipStatus" >
<option value="Single">Single</option>
<option value="Taken">Taken</option>
</select>
City*: <input type="text" name="city" onKeyup="validate()" onBlur="validatecity();"/><span id="userCity"></span><br />
Postcode*: <input type="text" name="postCode" onKeyup="validate()" onBlur="validatePostcode();"/><span id="pCode"></span><br />
Mobile number*: <input type="tel" name="mobileNumber" onKeyup="validate()" onBlur="validateMobileNumber();"/><span id="mobNum"></span><br />
Gender*: <select name="gender" >
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
Date of Birth*: <input type="date" name="dateOfBirth" onKeyup="validate()" onBlur="validateDOB();"/><span id="dateOfBirth"></span>(Format: DD-MM-YYYY)<br />
<input type="submit" id="submit" name="submit" value="Register" disabled="disabled"/>
</form>
<?php
【问题讨论】:
标签: javascript validation forms