-1
<div id="checkbox">    
<input type="checkbox" id="1" name="1"/><br/>
<input type="checkbox" id="2" name="2"/><br/>
<input type="checkbox" id="3" name="3"/><br/>
<input type="submit" value="Create"/>
</div>

我有上面的代码,需要某种检查,以便表单仅在至少选中一个框时提交,如果选中 2 个框,则不会提交,因此只检查以确保选中 1。

非常感谢

4

8 回答 8

1

使用单选按钮

<div id="checkbox">   
<input type="radio" id="1" name="radio_button"/><br/>
<input type="radio" id="2" name="radio_button"/><br/>
<input type="radio" id="3" name="radio_button"/><br/>
<input type="submit" value="Create"/>
</div>
于 2013-05-10T08:50:38.937 回答
1

如果您有兴趣让用户选择一个或多个值,则使用 Checkbox 是有意义的。为了您的目的,我会推荐单选按钮

使用单选按钮而不是复选框,并为它们提供相同的名称。然后根本不使用javascript。

于 2013-05-10T08:47:37.227 回答
0

如果只选中其中一个,则应使用单选按钮。

<div id="checkbox">    
<input type="radio" id="1" name="somename"/>Label1<br/>
<input type="radio" id="2" name="somename"/>Label2<br/>
<input type="radio" id="3" name="somename"/>Label3<br/>
<input type="submit" value="Create"/>
</div>

http://jsfiddle.net/WHDFt/

您还想确保其中之一被选中。有一些解决方案。

  1. 进行默认检查。例如,您可以默认选中第一个收音机。取消选中单选按钮是不可能的,所以总会有选中的字段。

  2. 您可以在提交表单时使用 JavaScript 验证这一点。

于 2013-05-10T08:53:34.940 回答
0

给 id 提交按钮,例如:

<input id="submit" type="submit" value="Create"/>

js代码:

$(function(){
   $('#submit').click(function(){
      if($('#checkbox input:checked')){
         return true;
      }
      return false;
   });
});

但是使用多选对你来说是更好的主意

于 2013-05-10T08:54:30.340 回答
0
if(document.getElementById('1').checked || document.getElementById('2').checked || document.getElementById('3').checked)
 {

     if((document.getElementById('1').checked && document.getElementById('2').checked ) || (document.getElementById('2').checked && document.getElementById('3').checked ) || (document.getElementById('1').checked && document.getElementById('3').checked ))
      {

         return false;
      }

      else
      {
          //dosomthing

      }

    }
于 2013-05-10T09:02:47.570 回答
0

你为什么不只使用一个单选按钮?或在此复选框上添加一个类(如果需要复选框)并取消全选onClick

于 2013-05-10T08:47:30.783 回答
0

我建议使用单选按钮组。您可以按照此参考

使用单选按钮,您无需使用 javascript。但是如果你坚持使用复选框,使用 javascript 是解决方案之一。

于 2013-05-10T08:49:17.477 回答
0

使用Javascript函数:

<script>
function checkifclicked()
{

    //alert($('input[name=cb]').val());
    var checkboxs=document.getElementsByName("cb");
    var okay=false;
    for(var i=0,l=checkboxs.length;i<l;i++)
    {
        if(checkboxs[i].checked)
        {
            okay=true;
        }
    }
    if(!okay){

        alert("Please check a checkbox");
        return false;
    }

}
</script>


<form name="send_email" id="send_email" action="send_email.php" onSubmit="return checkifclicked()" method="post">

<div id="checkbox">    
<input type="checkbox" id="1" name="cb"/><br/>
<input type="checkbox" id="2" name="cb"/><br/>
<input type="checkbox" id="3" name="cb"/><br/>
<input type="submit" value="Submit"/>
</div>


</form>

在这里演示>>

于 2013-05-10T08:52:14.190 回答