0

这是包含带有单选按钮的表单的 php 文件的代码:

<?php
    while($r7 = mysql_fetch_array($rt3)){
        $name=$r7["name"];  
        $s=$r7["question"]; 

        echo "
        <div>$s</div>

        <form name='Tester' method='post' onSubmit='return RegValidate(this);' action='quest.php' >
        <input type='radio' name='w1' value='1'>1<br>
        <input type='radio' name='w1' value='2'>2<br>
        <input type='radio' name='w1' value='3'>3<br>



        ";
        }
        echo" <input  name='Submit' value='Tester' type='submit' />
        </form>";

?>

$name 和 $q 是使用 mysql 查询从数据库中派生的。这工作正常。到目前为止,我已经使用了以下 javascript 代码:

function RegValidate(Tester) 
 {

 if($('#w1').not(':checked'))
{
   alert('Radio not checked');
   return false;
}

}

但是使用此代码,我继续收到错误消息,即使我选择了单选按钮,我也无法继续。

while 循环产生几组单选按钮,如 $q,从数据库中获取问题并将其与 3 个单选按钮一起发布到页面上。每个问题 $q 都有上面的 3 个单选按钮,这就是 $name 的原因。

如何使用 javascript 验证此表单。注意。该表单将仅包含单选按钮。

4

3 回答 3

0

您有一个错误,您的输入没有 ID 或 CLASS,所以添加到所有输入单选class='w1'并尝试下一个代码:

 if ($(".w1 option:selected").length<1)
     alert ('nothing selected');

还可以看看这篇文章:检查是否使用 jQuery 选择了选项,如果没有选择默认值

于 2012-09-27T20:32:52.887 回答
0

做这些事情:

      <input type='radio' class='w1' name='w1' value='1'>1<br>
      <input type='radio' class='w1' name='w1' value='2'>2<br>
      <input type='radio' class='w1' name='w1' value='3'>3<br>

在js中:

最新编辑:

  if ( $(':radio[class=w1]').attr('checked') != 'checked' ) {
    alert('Radio not checked');

}
于 2012-09-27T20:56:12.680 回答
0
function RegValidate(Tester) {
    if ($(":radio[name=w1]:checked").toArray().length == 0) {
        alert('nothing selected');
        return false;
    }
}​

小提琴

于 2012-09-28T00:02:01.983 回答