2011-08-25 144 views
1

我的目标是拥有一对单选按钮,每一对单选按钮都插入到博客文章的div中。 I.E.每个帖子可以被喜欢(在)/不喜欢(关闭)。复选标记随后用作所有喜欢/不喜欢的帖子的通用切换。下面的代码仅仅是一个原型,但我想添加第二个复选框,使用户可以隐藏所有喜欢的内容,隐藏所有不喜欢的内容,隐藏两者(查看哪些内容尚未确定)或没有。单选按钮+复选框组合

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

<!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> 

因此,有人可以帮我修改这个代码:

  1. 添加第二个复选框
  2. 拥有的第一个复选框隐藏所有div地方电台是在
  3. 有第二个复选框隐藏收音机关闭的所有div
  4. 让收音机选择记住它们的位置,当用户返回时,他的设置将被调用。
+0

有问题吗? –

+1

这归结为'plz gimme the codez'。显示你对这4点的尝试,我们会尽力为你解决它们。但否则,不... –

+0

我不知道如何“我不知道如何”=“给我请”。不要提出毫无意义的评论,你可以简单地给我一个像stefano一样的建议,通过指向我jQuery。 – Sweepster

回答

-1

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

+0

此外,我会看到我能做些什么来真正帮助show hide问题 – stefano

+2

这是一条评论。没有答案 – mplungjan