控制HTML中的复选框

Controlling Checkboxes in HTML

本文关键字:复选框 HTML 控制      更新时间:2023-09-26

我正试图将"无偏好"选项添加到我的复选框列表中,我希望这样做如下:

  1. 当选择"无首选项"时,所有选中的复选框都将取消选中。

  2. 如果选择了"无首选项",并且选中了另一个复选框,则"无首选"将被取消选择。

以下是我迄今为止所拥有的:http://jsfiddle.net/VuS5R/1/

谢谢你的帮助。

我的建议是在ul元素上加一个ID。然后可以使用getElementByIDgetElementsByTagName来识别复选框。由于"无首选项"复选框是第一个,因此在单击事件时绑定事件以取消选中所有复选框(如果选中)。

var checkboxes = document.getElementById('list').getElementsByTagName('input');
checkboxes[0].onclick = function(){
    if(checkboxes[0].checked){
        for(var i = 1; i < checkboxes.length; i++){
            checkboxes[i].checked = false;
        }
    }
}

这是小提琴。

jQuery的优雅解决方案。"无偏好"有"无"类,其他"偏好":
$(document).ready(function ()
{
   $(".Nop").click(function()
   {
        if ($(this).is(":checked"))
        {
             $(".pref").attr("checked", false);      
        }
    });
    $(".pref").click(function()
    {
          if ($(this).is(":checked"))
          {
               $(".Nop").attr("checked", false);      
          }
     });
});
  1. 首先,您必须为每个复选框提供一个唯一的ID(目前它们的ID都为1)
  2. 然后,您可以将"无偏好"复选框声明更改为:

    input type="checkbox"id="0"name="BT"title="无首选项"value="0"checked="checked"onclick="return NoPreference_ClientClick()"

  3. 您将在页面中添加以下JavaScript:

    函数NoPreference_ClientLicense(){if($get("0").checked){$get("1").checked=$get("2").checked=$get("3").checked=$get("4").checked=$get("5").checked=false;}其他的{$get("1").checked=$get("2").checked=$get("3").checked=$get("4").checked=$get("5").checked=true;}return false;}

我希望你能得到图案!