Javascript 单选按钮&x2B;复选框组合

Javascript 单选按钮&x2B;复选框组合,javascript,checkbox,radio-button,dynamic,show-hide,Javascript,Checkbox,Radio Button,Dynamic,Show Hide,目的是我有一对单选按钮,每对单选按钮都插入一个带有博客文章的div中。也就是说,每个帖子都可以被喜欢(打开)/不喜欢(关闭)。然后,复选标记作为一个通用开关,用于切换所有喜欢/不喜欢的帖子。下面的代码仅仅是一个原型,但我确实想添加第二个复选框,使用户可以隐藏所有喜欢的、所有不喜欢的、隐藏两者(以查看哪些还没有决定)或无 在下面的代码中,我无法使复选框独立于单选按钮工作。实际上,选中该框会将单选按钮切换为On。我希望单选按钮保持在用户想要的位置,并且在选中复选框时,只有当收音机打开时,隐藏的消息才

目的是我有一对单选按钮,每对单选按钮都插入一个带有博客文章的div中。也就是说,每个帖子都可以被喜欢(打开)/不喜欢(关闭)。然后,复选标记作为一个通用开关,用于切换所有喜欢/不喜欢的帖子。下面的代码仅仅是一个原型,但我确实想添加第二个复选框,使用户可以隐藏所有喜欢的、所有不喜欢的、隐藏两者(以查看哪些还没有决定)或无

在下面的代码中,我无法使复选框独立于单选按钮工作。实际上,选中该框会将单选按钮切换为On。我希望单选按钮保持在用户想要的位置,并且在选中复选框时,只有当收音机打开时,隐藏的消息才会显示出来。如果收音机已关闭,则勾选此框将不会产生任何结果

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-NZ">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Unhide on checkboxes/radio buttons</title>
<script type="text/javascript">
function toggleLayer(val)
{
    if(val == 'on' || val === true)
    {
        document.getElementById('a1').checked = true;
        document.getElementById('layer1').style.display = 'block';
    }
    else if(val == 'off' || val === false)
    {
        document.getElementById('a2').checked = true;
        document.getElementById('layer1').style.display = 'none';
    }
}
</script>
</head>
<body>
<form action="" method="post">
    <fieldset>
        <legend>Unhide Layer Form</legend>
        <ul>
            <li><label for="a1">On</label> <input id="a1" name="switcher" type="radio" value="off" checked="checked" onclick="toggleLayer(this.checked);" /> <label for="a2">Off</label> <input id="a2" name="switcher" type="radio" value="off" onclick="toggleLayer(!this.checked);" /></li>
            <li><label for="b1">Check Me:</label> <input id="b1" name="b1" type="checkbox" value="off" checked="checked" onclick="toggleLayer(this.checked);" /></li>
        </ul>
    </fieldset>
</form>
<div id="layer1">You can now see this.</div>
</body>
</html>

取消隐藏复选框/单选按钮
功能切换层(val)
{
如果(val='on'| | val===true)
{
document.getElementById('a1')。checked=true;
document.getElementById('layer1')。style.display='block';
}
else if(val='off'| | val===false)
{
document.getElementById('a2')。checked=true;
document.getElementById('layer1')。style.display='none';
}
}
取消隐藏图层窗体
  • 断断续续
  • 检查我:
你现在可以看到这个了。
那么,有人能帮我修改这个代码吗

  • 添加第二个复选框
  • 让第一个复选框隐藏收音机打开的所有div
  • 让第二个复选框隐藏收音机关闭时的所有div
  • 让收音机选择记住它们在哪里,因此当用户返回时,其设置将被调用

  • 首先,您应该知道,强烈建议使用框架。看看jQuery。示例:您可以开始将“document.getElementById”替换为$(char)。这使您可以专注于问题的解决,而不是如何解决(包括关键字、浏览器支持等)。

    此外,我将看看我能做些什么来真正帮助解决显示隐藏问题这是一个评论。没有答案这归结为“请给我密码”。展示您为这4点所做的尝试,我们将尝试为您修复每一点。但除此之外,我不知道“我不知道怎么做”=“请给我”。你可以简单地给我一个建议,而不是像stefano那样给我一个毫无意义的评论,把我指向jQuery。