我正在开发一个从 mysql 数据库中提取数据并将结果显示为单选按钮的测验。单选按钮是根据 key=>value 填充的,并通过简单的 forloop 生成。这已经做过很多次了,简单的谷歌搜索和研究将产生完成此任务所需的所有结果。我遇到或遇到的问题(在我决定只使用 jquery 执行此操作之前)是当我提交表单时,它将执行 javascript 函数以验证是否已选择按钮,但是当您选择其他任何选项时与第一个单选按钮相比,您会收到与未选择任何按钮时相同的“进行选择”警报。选择第一个单选按钮将返回 true 并执行 getCheckedValue 函数调用。好像,该脚本仅识别出我有一种输入类型,并且不理解遍历其余按钮。我已经重构了这个函数十几次,但仍然不知道为什么它不起作用。
<?php
foreach ($dataReturn as $j => $value){
echo "<input type='radio' class='answer' id='radiobtn' name='radiobtn' value='".$j."'>" .$value." </input><br/>";
}
?>
上面是生成单选按钮的循环(仅供参考,$dataReturn 是一个混洗关联数组的返回值。(按预期工作)单击提交按钮时,它会调用下面的 javascript 函数。
function isNull(){
var isChecked = false;
var radiobutton = document.getElementsByName('radiobtn');
for (var i=0; i <= radiobutton.length; i++){
if (radiobutton[i].checked){
return true;
var answer = radiobutton[i].value;
getCheckedValue(answer);//using this just for testing selected value
}else {
alert("Make a selection.");
}
return false;
}
}
我只是不明白为什么这不起作用。如上所述,使用 jquery 可以完美地工作。