【问题标题】:Hide/Show Div on Radio Selection在收音机选择上隐藏/显示 Div
【发布时间】:2012-02-19 02:47:16
【问题描述】:

我想隐藏/显示基于无线电选择的 div。

-在页面加载时隐藏 div 并选择单选“是”。

-如果用户选择单选“否”,则会出现 div。

-如果用户再次选择“是”,则 div 将再次隐藏。

谁能告诉我这是如何工作的?

html:

<table width="450px" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td width="200px" style="padding-top:3px; padding-left:3px;"><strong>Deliver Immediately?</strong>
    <input type="radio" name="imm" id="delivernow" checked="true" />Yes
    <input type="radio" name="imm" id="deliverlater" />No
    </td>   
    <td width="140px">       
            <div name="datediv">
                <label for="date">Select date:</label>
                <input type="Text" id="date" maxlength="25" size="25"/>
                <img src="images/cal.gif" onclick="javascript:NewCssCal('date','ddMMyyyy','arrow',true,'12','','future')" style="cursor:pointer"/>
            </div>
    </td>       
    </tr>
</table

【问题讨论】:

    标签: javascript jquery html radio-button


    【解决方案1】:

    这样的?您需要加载 jQuery。

    $(function(){
        $("div[name='datediv']").hide();
        $("#delivernow").add("#deliverlater").change(function(){
            $("div[name='datediv']").fadeToggle();
        });
    
    });
    

    【讨论】:

      【解决方案2】:

      jQuery 使这变得相当简单。您可以向单选组添加一个点击功能(在本例中使用名称“imm”进行选择)并检查被点击的单选按钮的 ID,如下所示:

      $("input[name='imm']").click(function(){
          if($(this).attr("id") == "deliverlater"){
              $("#datediv").show();
          }else{
              $("#datediv").hide();   
          }
      });
      

      这是 jsfiddle http://jsfiddle.net/h9H29/ 上的一个活生生的例子

      编辑:这是给你的 jQuery 包含代码

      <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
      <script type="text/javascript">
      $(document).ready(function(){
          // We place your page code here
          $("input[name='imm']").click(function(){
              if($(this).attr("id") == "deliverlater"){
                  $("#datediv").show();
              }else{
                  $("#datediv").hide();   
              }
          });
        });
      </script>
      

      【讨论】:

      • 这在 jsfiddle 上运行良好,但在我的网站上却不行。 jQuery 一定不能加载??我将 jsfiddle 中的脚本放在 我的页眉中?
      • 是的,如果您确保包含 jQuery,那么应该对其进行排序。你有什么错误吗?未包含/加载 jQuery 的常见错误是“$ 未定义”。
      • @BrettJMason 我现在已经为你添加了 jQuery 包含,伙计。应该可以把它复制进去:)
      猜你喜欢
      • 1970-01-01
      • 2015-10-15
      • 2013-02-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-11-18
      • 1970-01-01
      相关资源
      最近更新 更多