JavaScript单选按钮html web表单

JavaScript radio buttons html web form

本文关键字:表单 web html 单选按钮 JavaScript      更新时间:2023-09-26

我目前使用html编码一个'表单条目'。我还使用JavaScript验证来验证表单的输入。目前,我有"名称","科目"answers"考试号码",每个都工作并具有功能验证。对于"资格"字段,我有单选按钮,用户必须在其中单击选择他们的资格。我有验证的地方,但不幸的是,我不能得到字段以红色突出显示,并显示错误信息时,提交的表单和"资格"已留空。除了资格领域之外,一切都在运作。如果有人能修复"资格"的验证,以便当字段为空时,文本将被突出显示,并包含错误信息,那将是伟大的。由于

下面是我的代码:
<html>
<head>
<title>Exam Entry</title>
<script language="javascript" type="text/javascript">
function qualinform(qualname) {
alert(qualname + " was selected as your qualification.");
}
function validateForm(e) {
var result = true;
var msg="";
if (document.ExamEntry.name.value=="") {
msg+="You must enter your name 'n";
document.ExamEntry.name.focus();
document.getElementById('name').style.color="red";
result = false;
}
if (document.ExamEntry.subject.value=="") {
msg+="You must enter the subject 'n";
document.ExamEntry.subject.focus();
document.getElementById('subject').style.color="red";
result = false;
}
if (document.ExamEntry.group1.value=="") {
msg+="You must choose a qualification'n";
document.ExamEntry.group1.focus();
document.getElementById('radioqual').style.color="red";
result = false;
}
var regex = /^'d{4}$/;
if (document.ExamEntry.Examination_number.value == "") {
msg+="You must enter your examination number";
document.getElementById('Examination_number').style.color="red";
result = false;
} else if (isNaN(document.ExamEntry.Examination_number.value)) {
msg+="Examination number should only contain digits";
document.getElementById('Examination_number').style.color="red";
result = false;
} else if (!regex.test(document.ExamEntry.Examination_number.value)) {
msg+="Examination number should contain exactly 4 digits";
document.getElementById('Examination_number').style.color="red";
result = false;
}
if (msg != "") {
alert(msg);
}
return result;
}
</script>

</head>
<body>
<h1>Exam Entry Form</h1>
<form name="ExamEntry" method="post" action="success.html" onsubmit="return     validateForm();">
<table width=”50%” border=”0”> 
<tr>
    <td id="name">Name</td>
    <td><input type="text" name="name" /></td>
</tr>
<tr>
    <td id="subject">Subject</td>
    <td><input type="text" name="subject" /></td>
</tr>
    <td id="Examination_number">Examination number</td>
    <td><input type="text" maxlength="4" name="Examination_number" /></td>
</tr>
<tr>
<td id="qualification">Choose your qualification</td>
<tr>
<td id="radioqual">
<input onclick="qualinform('GCSE');" type="radio" name="group1" value="GCSE">GCSE<br>
<input onclick="qualinform('AS');" type="radio" name="group1" value="AS">AS<br>
<input onclick="qualinform('A2');" type="radio" name="group1" value="A2">A2<br>
</td>
</tr>
<tr>
    <td><input type="submit" name="Submit" value="Submit" /></td>
    <td><input type="reset" name="Reset" value="Reset" /></td>
</tr>
</table>
</form>
</body>
</html>    

group1单选按钮的返回值未定义,而不是您期望的",因此您需要更改if语句

中的条件
if (document.ExamEntry.group1.value==undefined)