【问题标题】:Show/hide div with radio button using Jquery Cookie使用 Jquery Cookie 显示/隐藏带有单选按钮的 div
【发布时间】:2015-03-05 22:48:16
【问题描述】:

我有一个带有单选按钮的表单。当我单击单选按钮时,会显示一个适当的 div。当页面加载时,所有 div 都被隐藏。对我来说效果很好。

但是如何使用 jquery cookie 插件修改此代码以记住最后选择的单选按钮并在页面刷新后显示适当的 div。

<form id='form-id'>
  <input name='test' type='radio' value="a" />A
  <br />
  <input name='test' type='radio' value="b" />B
  <br />
  <input name='test' type='radio' value="c" />C
</form>
<div id='show-me' style='display:none'>Hello</div>
<div id='show-me2' style='display:none'>Hello2</div>
<div id='show-me3' style='display:none'>Hello3</div>   

<script>   
  $("input[name='test']").click(function () {
    $('#show-me').css('display', ($(this).val() === 'a') ? 'block':'none');
    $('#show-me2').css('display', ($(this).val() === 'b') ? 'block':'none');
    $('#show-me3').css('display', ($(this).val() === 'c') ? 'block':'none');
  });
</script>

【问题讨论】:

    标签: jquery html cookies show-hide


    【解决方案1】:

    你可以试试这个:

    // On reload apply the previous selection kept in cookie 
    if($.cookie('selected') && $.cookie('shown')){
      $("input[name='test']"+"[value='"+$.cookie('selected')+"']").prop('checked', true)
      $("#"+$.cookie('shown')).css('display', 'block')
    }
    
    $("input[name='test']").click(function () {     
      $('#show-me').css('display', ($(this).val() === 'a') ? 'block':'none');
      $('#show-me2').css('display', ($(this).val() === 'b') ? 'block':'none');
      $('#show-me3').css('display', ($(this).val() === 'c') ? 'block':'none');
    
      $.cookie('selected', $(this).val()) //Keep selected element in cookie
      $.cookie('shown', $('div:visible').attr("id")) //Keep shown element in cookie
    });
    

    【讨论】:

    • 抱歉,这个修改确实对我有用。单击单选按钮不会显示 div 的内容。
    • @spinet:什么时候点击不显示?重载前还是重载后?是否抛出错误?
    • 之前和之后都不显示。没有显示错误。
    • 你的浏览器是什么?我创建了一个 fiddle 供我查看。 :)
    • 谢谢。现在它对我有用。也许我做错了什么。
    猜你喜欢
    • 2011-07-28
    • 2013-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-06
    • 2014-04-21
    • 2016-01-20
    相关资源
    最近更新 更多