Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何允许在UserControl中的四个复选框中只选中一个复选框?_Javascript_Asp.net_Jquery - Fatal编程技术网

Javascript 如何允许在UserControl中的四个复选框中只选中一个复选框?

Javascript 如何允许在UserControl中的四个复选框中只选中一个复选框?,javascript,asp.net,jquery,Javascript,Asp.net,Jquery,我创建了一个带有4个复选框的用户控件(服务器控件)。我只允许选中四个复选框中的一个 用户控件在页面上动态加载。I页面可能有多个相同的UserConrol 如何使用jQuery或Javascript实现这一点?使用。复选框用于多选,而单选按钮用于单选。然后使用单选按钮,您可以为这些控件指定GroupName,以将选择限制为单个项目。使用。复选框用于多选,而单选按钮用于单选。然后,使用单选按钮,您可以为这些控件指定GroupName,以将选择限制为单个项目。您可以将组中的所有复选框设置为同一类,并执

我创建了一个带有4个复选框的用户控件(服务器控件)。我只允许选中四个复选框中的一个

用户控件在页面上动态加载。I页面可能有多个相同的UserConrol


如何使用jQuery或Javascript实现这一点?

使用。复选框用于多选,而单选按钮用于单选。然后使用单选按钮,您可以为这些控件指定
GroupName
,以将选择限制为单个项目。

使用。复选框用于多选,而单选按钮用于单选。然后,使用单选按钮,您可以为这些控件指定
GroupName
,以将选择限制为单个项目。

您可以将组中的所有复选框设置为同一类,并执行类似操作,使用JQuery取消选中所有复选框,同时选中或取消选中已单击的复选框:

$('.checkbox').click(function{
   // save the original checked state of the one we're clicking:
   var checked = $(this).attr('checked'); 
   $('.checkbox').attr('checked', false); // uncheck all of the boxes
   $(this).attr('checked', !checked); // invert the original state
});

但更好的选择可能是使用单选按钮控件,并带有“以上任何一项”选项。通过这种方式,您可以进行验证(他们是否回答了问题?

您可以将组中的所有复选框设置为同一类,并执行类似操作,使用JQuery取消选中所有复选框,同时选中或取消选中已单击的复选框:

$('.checkbox').click(function{
   // save the original checked state of the one we're clicking:
   var checked = $(this).attr('checked'); 
   $('.checkbox').attr('checked', false); // uncheck all of the boxes
   $(this).attr('checked', !checked); // invert the original state
});

但更好的选择可能是使用单选按钮控件,并带有“以上任何一项”选项。这样你就可以进行验证(他们回答了问题吗?

我认为应该是:$(this.attr('checked',checked))

我认为应该是:$(this.attr('checked',checked)

在使用cakephp时也有类似的问题。Cakephp将复选框包装在DIV中。 我的解决方案是使用每个循环清除复选框,然后选择用户勾选的复选框

案例:

1
二
三
$('.unique')。单击(函数(){
$('.unique')。查找('input')。每个(函数(){
$(this.attr('checked',false);
});
$(this.find('input:first').attr('checked',true);
});

在使用cakephp时也有类似的问题。Cakephp将复选框包装在DIV中。 我的解决方案是使用每个循环清除复选框,然后选择用户勾选的复选框

案例:

1
二
三
$('.unique')。单击(函数(){
$('.unique')。查找('input')。每个(函数(){
$(this.attr('checked',false);
});
$(this.find('input:first').attr('checked',true);
});

我同意。但在这种情况下,我需要允许用户取消选择所有选项。可能他不想做任何选择。@Dee-听起来你需要一个组合框。单选按钮只适用于一个人;复选框表示零或多,组合框表示零或一。我正在制作一个在线测试应用程序,其中一个问题附加到多个选项,只有一个正确答案。在这种情况下,我不能使用组合框(用于显示选项)。所以我在玩单选复选框。我同意。但在这种情况下,我需要允许用户取消选择所有选项。可能他不想进行任何选择。@Dee-听起来你需要一个组合框。单选按钮只适用于一个人;零或多的复选框,以及零或一的组合框。我正在制作一个在线测试应用程序,其中一个问题附加到多个选项,只有一个正确答案。在这种情况下,我不能使用组合框(用于显示选项)。因此,我在玩单选复选框。