【问题标题】:jQuery or Javascript solution for radio buttons and showing/ hiding divs用于单选按钮和显示/隐藏 div 的 jQuery 或 Javascript 解决方案
【发布时间】:2013-07-24 15:36:00
【问题描述】:

我有,在最初查看时,根据用户对单选按钮的响应,对 show/hide 两个 divs 的简单要求。

查看 JsFiddle:http://jsfiddle.net/P75cv/

真正的复杂度如下。

如果任何问题的单选按钮值为 2 或 1,则将显示 Div one。 Div two在任何问题的值不为 2、1 或 -1 时显示。

但是,我还需要进一步检查以执行以下操作,如果 div one 已显示并且用户返回并更改其响应以使单选按钮没有值或 2 或 1,则 div @987654328 @ 需要隐藏并显示 div two。类似地,如果 div two 正在显示,但用户返回并更改其响应以使任何单选按钮的值为 2 或 1,则需要隐藏 div two 并显示 div one

最后,用户可以选择保存并返回页面 - 如果他们这样做,我需要显示正确的 div(基于页面加载?)。

我可以在 jQuery 和 Javascript 中显示和隐藏 div 的简单部分,但这种复杂程度确实让我头疼 - 谁能提供见解或解决方案?

【问题讨论】:

  • 你问的东西太精确了,这不是一个人们会做功课的地方......只是帮助解决具体问题。从这里获取一些想法,不是那么复杂:jsfiddle.net/eJaQh/1
  • 感谢@Alvaro - 查看您提供的 jsFiddle,看来我将不得不手动遍历问题 - 如果只有两个问题,这很好 - 原因之一问题是当我在页面上说 10 或 20 组问题时,我希望找到一种使用 jQuery 的更优雅和更有效的方法。我不希望这会为我完成 - 只是我坚持这一点的想法和建议。
  • 您可以根据需要在其他中遍历它们。这只是一个例子。如果您不知道如何以其他方式执行此操作,请打开一个带有特定疑问的新问题。
  • 再次感谢 - 我在下面提供了自己的答案 - 不漂亮,但它有效。

标签: javascript jquery radio-button show-hide


【解决方案1】:

我将创建执行显示/隐藏例程的基本函数。然后填充一个包含所有单选按钮值的数组,检查该数组是否包含您要查找的值,然后调用正确的函数。

我会使用 JQuery cookie 来存储用户保存并返回页面时应该显示的 div。

【讨论】:

  • 感谢您抽出宝贵时间回复 - 正如您从我自己的回答中看到的那样 - 我设计了一个解决方案......虽然不漂亮,但它有效。
【解决方案2】:

所以,回答我自己的问题 - 我使用了以下代码:

<?php
function checking() {
count = 0;
";
for ($i=1; $i<=10; $i++){
echo"   q".$i." = $('input[name=\"q".$i."\"]:checked').val();
    if(q".$i." == 1 || q".$i." == 2){
            document.getElementById('disagree').style.display = 'block';
            document.getElementById('agree').style.display = 'none';
        count = 1;
    }
    ";

    }

    echo" 

    if (count==0){
        document.getElementById('disagree').style.display = 'none';
        document.getElementById('agree').style.display = 'block';
    }

}
?>

如您所见,我在页面上有 10 个问题,并使用 PHP 编写脚本并运行。毫无疑问,有更有效和更优雅的方法可以实现这一目标。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-28
    • 1970-01-01
    • 2014-04-21
    • 2020-03-03
    • 2012-09-18
    • 1970-01-01
    • 2013-01-20
    相关资源
    最近更新 更多