我想知道是否有人可以帮助我。我无法搞清楚我的Javascript代码。我还在学习所有这些(我不是最好的)。有几件事我不能上班。当我提交此表单时,它不会突出显示未回答的内容(所有内容仅在提交时重置)。另外,我无法弄清楚如何计算数字或正确答案并显示它们。继承我的代码,如果有人能帮助我那将是伟大的。更新的代码:
<!DOCTYPE html>
<html>
<head>
<title>3 Questions</title>
<meta charset="utf-8">
</head>
<body>
<form name="myForm" id="form1" onsubmit="return FormValidation()";>
<div class="q1">
1) Spell Java?<br/>
<input type="text" id="q1" name="name"/><br/>
</div>
<div class="q2">
2) What does .org mean?<br/>
<input type="radio" id="network" name="net"/>Network
<input type="radio" id="organ" name="org"/>Organization
</div><br/><br/>
<div class="q3">
3) Who won the last Superbowl?<br/>
<select name="team">
<option value="sea" id="hawks" name="sea">Seattle Seahawks</option>
<option value="broncos" id="denver" name="broncos">Denver Broncos</option>
</select>
</div><br/><br/>
<input type="submit" value="Submit">
</form>
<script>
function FormValidation(){
if document.getElementById(q1).style.borderColor = "red";
if document.getElementById(denver).style.borderColor = "red";
else if document.getElementById(hawks).style.borderColor = "green";
return false
if document.getElementById(network).style.borderColor = "red";
else if document.getElementById(organ).style.borderColor = "green";
return false
}
</script>
</body>
</html>
答案 0 :(得分:0)
你的例子有很多问题。
首先,您应始终return false;
或在表单事件上调用preventDefault()
(通过参数传递给您的onsubmit处理程序。如果您没有返回false或preventDefault,您的页面将重新加载。在少数情况下返回真实。
另一个问题是像document.myForm.csi.value
这样的东西不是一件事。您应该在输入元素上设置id并使用document.getElementById()
来获取它们,或使用查询选择器(通常人们使用jQuery,但您不必使用它。')。
另一件事是ids应该始终是唯一的。你有一对共享。
最后,为了获得一个选择,你看看selectedIndexed。
对于无线电输入,您可能希望迭代这些输入并查看哪些已被检查。