我一直在搜索单选按钮验证的各种示例并掌握这个概念,但似乎没有任何示例适合我的情况。我查询了我的数据库,它有4个选项,每个选项我都生成了一个相关的单选按钮,如下所示:
<?php foreach($options as $option){ ?>
<p><input type="radio" name="ID<?php echo $row['id']; ?>" value="<?php echo $option; ?>"><?php echo $option; ?></p>
<?php } ?>
所以这基本上会从数据库中生成每行4个单选按钮。这在源中显示为:
<form method="POST" action="Result.php">
<p>1. Question </p>
<p><input type="radio" name="ID1" value="answer1">answer1</p>
<p><input type="radio" name="ID1" value="answer2">answer2</p>
<p><input type="radio" name="ID1" value="answer3">answer3</p>
<p><input type="radio" name="ID1" value="answer4">answer4</p>
<p>2. Question 2</p>
<p><input type="radio" name="ID2" value="answer1">answer1</p>
<p><input type="radio" name="ID2" value="answer2">answer2</p>
<p><input type="radio" name="ID2" value="answer3">answer3</p>
<p><input type="radio" name="ID2" value="answer4">answer4</p>
<input type="submit" name="submit" value="Submit!">
</form>
等等。
这些单选按钮的名称是由php部分生成的,我如何使用带有相关警报的javascript来检查每个问题中的1个单选按钮是否在提交表格之前已经检查了问题?
或者甚至可以用php ISSET如何实现这一目标?
答案 0 :(得分:1)
仅使用JavaScript验证是否选中了广播组中的单选按钮:
function radiogroupSelected(name){
var inputArr = document.getElementsByName(name);
for(var i = 0; i < inputArr.length; i++){
if(inputArr[0].checked){
return true;
}
}
return false;
}
现在您可以像radiogroupSelected('ID1')
一样调用此函数来确定是否选择了其中一个输入。