Javascript 强制单选按钮签入表单无效

Javascript 强制单选按钮签入表单无效,javascript,forms,button,radio,required-field,Javascript,Forms,Button,Radio,Required Field,我已经做了一个多小时了,在这里和网上搜索了答案,但是没有办法,所以我现在请求一些帮助 我有一个表格,其中所有字段都必须填写,包括要选择的“单选”按钮,单选按钮组称为“仪器” 感谢您的帮助 以下是我的Javascript: <script type="text/javascript"> function checkFields(f) { name1 = document.form1.name1.value; name2 = document.f

我已经做了一个多小时了,在这里和网上搜索了答案,但是没有办法,所以我现在请求一些帮助

我有一个表格,其中所有字段都必须填写,包括要选择的“单选”按钮,单选按钮组称为“仪器”

感谢您的帮助

以下是我的Javascript:

<script type="text/javascript">

    function checkFields(f) {
        name1 = document.form1.name1.value;
        name2 = document.form1.name2.value;
        email1 = document.form1.email1.value;
        instrument = document.form1.instrument.value;
        stylemusic = document.form1.stylemusic.value;

        if ((name1 == "") || (name2 == "") || (email1 == "") || (instrument == "") || (stylemusic == "")) {
            alert("All fields need to be filled.");
            return false;
        }
}

函数检查字段(f){
name1=document.form1.name1.value;
name2=document.form1.name2.value;
email1=document.form1.email1.value;
仪器=document.form1.instrument.value;
stylemusic=document.form1.stylemusic.value;
如果((名称1==)| |(名称2==)| |(电子邮件1==)| |(乐器==)| |(风格音乐==)){
警报(“需要填写所有字段”);
返回false;
}
}
及我的表格编号:

<input type="radio" value="percussion" name="instrument">Percussion
<input type="radio" value="wind" name="instrument">Wind
打击乐器 风
您不需要对单选按钮进行验证,只需在默认情况下选中其中一个单选按钮,这样,您就可以确保每个组都有一个选中的按钮

这可以完成两件事:

  • 选中所需的组
  • 无需进行javascript验证

当然,我假设您使用的是分组,单选按钮单独没有意义,它们需要分组。

我找到了我的答案,并将其发布在这里,以防有人遇到同样的问题:

if((document.form1.instrument[0].checked==false)&&(document.form1.instrument[1].checked==false))

{
alert('You must make a choice');
return false
}

注意:添加[2]、[3]等的另一个实例,以容纳更多的单选按钮选择。

这会起作用,但通常最好确保用户输入他们想要的内容,而不是预先选择的随机值。@Soufiane Hassou必须选择表单中的单选按钮。如果没有单击单选按钮,我不希望表单被执行。当没有选择按钮时,instrument的值是多少?@demize没有默认值。单击其中一个单选按钮“必须”以使表单继续。我知道没有默认值,我的意思是当没有选择任何按钮时,将显示类似于
echo instrument
(我对Javascript了解不多,所以我自己也不能真正测试它,如果可以的话我会这样做,因为我对它为什么不起作用感兴趣。)也许你需要使用
null
或类似的东西来代替null字符串?