JavaScript仅验证第一个字段
因此,基本上,我正在尝试创建一个输入框列表,每个输入框在提交之前都需要进行验证。我是一个JavaScript和HTML的基础初学者,非常感谢您的任何输入,因为只有第一个表单正在被验证。只要名字中有字母字符,它就会提交。JavaScript仅验证第一个字段,javascript,forms,validation,xhtml,Javascript,Forms,Validation,Xhtml,因此,基本上,我正在尝试创建一个输入框列表,每个输入框在提交之前都需要进行验证。我是一个JavaScript和HTML的基础初学者,非常感谢您的任何输入,因为只有第一个表单正在被验证。只要名字中有字母字符,它就会提交。 <p><b> Forename: </b></p> <input type="text" size="32" name="frmForename" placeholder="Dylan"> <p&g
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
名字:
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
姓:
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
性别:
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
男性
女性
出生日期:
年龄:
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
课程:
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
选择你的课程
数据库
网站
网络
背
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
所有表格必须完整。
注册日期:
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
JavaScript
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
<script language="javascript" type="text/javascript">
document.bgColor="LightSteelBlue";
</script>
<script type="text/javascript">
function checkForm(form)
{
//****FORENAME****
// VALIDATE: No Characters
if(form.frmForename.value == "") {
alert("Error: Enter your forename.");
form.frmForename.focus();
return false;
}
// regular expression to match only alphanumeric characters and spaces
var re = /^[A-Za-z]+$/;
// VALIDATE: Does the entered text match the expression above?
if(!re.test(form.frmForename.value)) {
alert("Error: Cannot use numerical characters.");
form.frmForename.focus();
return false;
}
// validation was successful
return true;
}
</script>
<script>
function checkForm2(form)
//****SURNAME****
if(form.frmSurname.value == "") {
alert("Error: Enter your surname.");
form.frmSurname.focus();
return false;
}
// regular expression to match only alphanumeric characters and spaces
var re = /^[A-Za-z]+$/;
// VALIDATE: Does the entered text match the expression above?
if(!re.test(form.frmSurname.value)) {
alert("Error: Cannot use numerical characters.");
form.frmSurname.focus();
return false;
}
// validation was successful
return true;
}
</script>
<script>
function getDate() {
document.getElementById('dateReg').value= Date();
}
</script>
<script>
function confirm_reset() {
return confirm("Are you sure?");
}
</script>
<script>
function goBack() {
return confirm("Are you sure?");
window.history.back();
}
</script>
<script>
if(form.frmDateOfBirth.value == "") {
alert("Error: Date Of Birth is empty!");
form.frmDateOfBirth.focus();
return false;
}
re = /^(\d{1,2})/(\d{1,2})/(\d{4})$/;
if(form.frmDateOfBirth.value != '') {
if(regs = form.frmDateOfBirth.value.match(re)) {
if(regs[1] < 1 || regs[1] > 31) {
alert("Invalid value for day: " + regs[1]);
form.frmDateOfBirth.focus();
return false;
}
if(regs[2] < 1 || regs[2] > 12) {
alert("Invalid value for month: " + regs[2]);
form.frmDateOfBirth.focus();
return false;
}
if(regs[3] < 1913 || regs[3] > (new Date()).getFullYear()) {
alert("Invalid value for Date Of Birth: " + regs[3] + " - must be between 1913 and " + (new Date()).getFullYear());
form.frmDateOfBirth.focus();
return false;
}
} else {
alert("Invalid date format: " + form.frmDateOfBirth.value);
form.frmDateOfBirth.focus();
return false;
}
}
</script>
<script>
function validateCourse() {
var x = document.forms["frmCourse"]["frmCourse"].value;
if (x == "select") {
alert("Please select a course.");
return false;
}
}
</script>
document.bgColor=“LightSteelBlue”;
功能检查表(表格)
{
//****名字****
//验证:没有字符
如果(form.frmForename.value==“”){
警告(“错误:输入你的名字。”);
form.frmForename.focus();
返回false;
}
//仅匹配字母数字字符和空格的正则表达式
变量re=/^[A-Za-z]+$/;
//验证:输入的文本是否与上面的表达式匹配?
如果(!重新测试(form.frmForename.value)){
警报(“错误:无法使用数字字符”);
form.frmForename.focus();
返回false;
}
//验证成功
返回true;
}
功能检查表单2(表单)
//****姓****
如果(form.frmSurname.value==“”){
警告(“错误:输入您的姓氏”);
form.frmSurname.focus();
返回false;
}
//仅匹配字母数字字符和空格的正则表达式
变量re=/^[A-Za-z]+$/;
//验证:输入的文本是否与上面的表达式匹配?
如果(!重新测试(form.frmSurname.value)){
警报(“错误:无法使用数字字符”);
form.frmSurname.focus();
返回false;
}
//验证成功
返回true;
}
函数getDate(){
document.getElementById('dateReg')。值=日期();
}
功能确认_重置(){
返回确认(“您确定吗?”);
}
函数goBack(){
返回确认(“您确定吗?”);
window.history.back();
}
if(form.frmDateOfBirth.value==“”){
警告(“错误:出生日期为空!”);
form.frmDateOfBirth.focus();
返回false;
}
re=/^(\d{1,2})/(\d{1,2})/(\d{4})$/;
if(form.frmDateOfBirth.value!=''){
if(regs=form.frmDateOfBirth.value.match(re)){
if(regs[1]<1 | | regs[1]>31){
警报(“当天的无效值:+regs[1]);
form.frmDateOfBirth.focus();
返回false;
}
if(regs[2]<1 | | regs[2]>12){
警报(“月份无效值:+regs[2]);
form.frmDateOfBirth.focus();
返回false;
}
如果(regs[3]<1913 | | regs[3]>(新日期()).getFullYear()){
警报(“出生日期的无效值:“+regs[3]+”-必须介于1913和“+(新日期())。getFullYear())”;
form.frmDateOfBirth.focus();
返回false;
}
}否则{
警报(“无效的日期格式:“+form.frmDateOfBirth.value”);
form.frmDateOfBirth.focus();
返回false;
}
}
函数validateCourse(){
var x=文件.forms[“frmCourse”][“frmCourse”]值;
如果(x==“选择”){
提醒(“请选择课程”);
返回false;
}
}
此行:
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
onclick=" return checkForm(); checkForm2();
表示如果checkForm返回false(form.frmForename.value==“”),则false将与return checkForm()中的返回一起使用,并取消单击事件,因此表单不会提交。然后调用checkForm2(),但此时按钮单击已被取消
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>
此外,没有必要将每个函数分离到它自己的元素中。您还应该使用form.submit事件,而不是button.click事件,并且您不应该使用内联事件处理程序(on…),而是使用标准元素addEventListener()。
onclick=“return checkForm();checkForm2()
如果返回第一个函数,第二个函数将永远不会启动,请尝试删除return语句。这似乎没有影响任何东西,还有其他想法吗?我尝试向每个函数添加return-true语句,但没有任何效果。是的,我看到了,但我如何解决这个问题?我尝试将所有JavaScript放在一个函数中,但效果不佳st不工作。首先,(正如我提到的)不要使用内联事件处理程序(onclick=…)。使用正确的机制元素。addEventListener()和cancel事件以正确的方式(element.preventDefault())。这样,您就不必担心返回任何值以及那些阻止其他代码(您想要运行的)的值从运行开始。@ScottMarcus您说“然后调用checkForm2()”,但实际上从来没有调用过。在返回checkForm();
之后,什么都不会发生。事实上,是的,这是有意义的,因为返回false将取消onclick事件。以后不会发生任何事情。
<p><b> Forename: </b></p>
<input type="text" size="32" name="frmForename" placeholder="Dylan">
<p><b> Surname: </b></p>
<input type="text" size="32" name="frmSurname" placeholder="Owen">
<p><b> Gender: </b></p>
<input type="radio" name="frmGender" value="male"> Male
<input type="radio" name="frmGender" value="female"> Female
<p><b> Date of Birth:</b><p>
<input type ="text" size="32" name="frmDateOfBirth" placeholder="DD/MM/YYYY">
<p><b> Age: </b></p>
<input type ="text" size="32" name="frmAge" min="12" max="150" placeholder="Enter Your Age">
<p><b> Course: </b></p> <select name="frmCourse" id="frmCourse">
<option value="select">Select Your Course</option>
<option value="databases">Databases</option>
<option value="websites">Websites</option>
<option value="networks">Networks</option>
</select>
<p><input type="submit" value="Enter Details" onclick=" return checkForm(); checkForm2();">
<input type="reset" value="Clear Form" onclick="return confirm_reset();">
<button onclick="goBack()">Back</button> </p>
<font size="3" color="red">All forms <u>must</u> be complete.</font>
<p><b> Date Registered: </b></p>
<input type="text" size="55" id="dateReg" readonly/>
</form>
</body>