我正在学校做一个项目,作为其中的一部分,我必须在我的html表单中包含单选按钮。下面是我不太了解的一些部分的Javascript代码。代码工作正常。有人可以给我一个代码如何工作的解释。
var check = false;
for (var i=0; i < document.ExamEntry.Level.length; i++)
{
if (document.ExamEntry.Level[i].checked)
{
var radiovalue = document.ExamEntry.Level[i].value;
check =true;
var usermessage=confirm("You have chosen: ".concat(radiovalue));
if(usermessage == false)
{
var radiovalue = "";
check = false;
}
}
}
<!--I understand the code below, its just some parts of the above code.
if (check ==false)
{
msg+="ERROR:You must select an entry level \n";
document.getElementById ('Levelcell'). style.color = "red";
result = false;
}
答案 0 :(得分:1)
我添加了评论来帮助解释这个:
var check = false;
// set a variable 'i' from 0 up to the ExamEntry level length (so for each radio)
// if there are 10 items, this code will run 10 times, each time with 'i' a different value from 0 to 9
for (var i=0; i < document.ExamEntry.Level.length; i++)
{
// is the radio button checked? If so, do the stuff inside. If not, skip this part
if (document.ExamEntry.Level[i].checked)
{
// set variable radiovalue to the value of the particular radio button
var radiovalue = document.ExamEntry.Level[i].value;
// set the check variable to true
check =true;
// ask the user to confirm the value and set usermessage based on confirmation
var usermessage=confirm("You have chosen: ".concat(radiovalue));
// if the user hits no on confirm, it will reset the radiomessage to blank and check to false
if(usermessage == false)
{
var radiovalue = "";
check = false;
}
}
}
答案 1 :(得分:0)
所有表单元素都绑定到全局HTML文档变量。因此,页面上的某个位置必须有一个名称为ExamEntry
的表单:
<form name='ExamEntry' id='ExamEntry` ...
下一部分是指表单中的元素。由于他们期待一个单选按钮,Level必须是无线电类型的输入:
<label name="Level" id="1" type="radio" ....
<label name="Level" id="2" type="radio" ....
循环遍历所有单选按钮。如果选中该按钮,它将获取检查的值,并显示该消息。如果找不到选中的按钮,则会显示错误消息。