【问题标题】:Jquery Radio button not showing selected divJquery单选按钮不显示选定的div
【发布时间】:2012-09-29 12:01:00
【问题描述】:

我正在使用 jquery 在选择时显示 div 并存储到数据库中

<script type="text/javascript"> 
    jQuery(document).ready(function(){

        jQuery("input[name$='advert_specifications[link_type]']").click(function(){

            var radio_value = jQuery(this).val();

            if(radio_value=='advert_page') {
                jQuery("#urlbox").hide('fast');
            }
            else if(radio_value=='external_link') {
                jQuery("#urlbox").show('fast');
            }
        });

        jQuery("#urlbox").hide();

    }); 
</script>



<div class="my_meta_control">

    <!--[advert link type group]-->
    <div class="left side clearfix">
        <label class="left sub_label"><input type="radio" value="advert_page" name="advert_specifications[link_type]"> Page Link</label>        
        <label class="left sub_label"><input type="radio" checked="checked" value="external_link" name="advert_specifications[link_type]"> External Link</label>
    </div>
    <!--[end of advert link type group]-->

    <div id="urlbox" style="display: none;">            
        <p class="sidebox clearform">
            <label>Advert External Link</label>     
            <input type="text" class="mydatepicker" value="" name="advert_specifications[advert_url]" id="advertdate">
        </p>
    </div>

</div>

点击功能可以正常工作,但是一旦我选择外部链接单选并保存到数据库而不是重新打开帖子,如果选择了外部链接单选按钮,#urlbox 总是隐藏在应该可见的位置。

编辑:

我尝试了这段代码,它在加载时隐藏# + test div 也做了同样的事情

jQuery(document).ready(function() {
    jQuery("div.links").hide();
    jQuery("input[name$='advert_specifications[link_type]']").click(function() {
        var test = jQuery(this).val();
        jQuery("div.links").hide();
        jQuery("#" + test).show();
    });
});

【问题讨论】:

  • 是的,这是 wordpress post metabox。因此,一旦我选择了外部链接并且如果我再次打开帖子进行编辑而不是总是#urlbox div,我发现它是隐藏的,因此需要再次单击外部链接单选按钮来显示它......我正在使用 WPAlchemy 元框farinspace.com/wpalchemy-metabox

标签: php jquery html


【解决方案1】:

根据我在您的主脚本中的理解,您隐藏了主块。虽然不需要,因为您已经在标记中说不显示。

请查看 jsfiddle 链接

演示

http://jsfiddle.net/saorabhkr/DFPAX/

【讨论】:

  • 哇!这就是我要找的。非常感谢
【解决方案2】:

它将始终隐藏,因为您已经编写了代码来隐藏脚本标记的倒数第二行中的框(#urlbox)。页面加载时始终执行。

【讨论】:

  • 我知道我的代码有问题,这就是我在这里发布的原因。
  • 可以做一件事,即您在单击外部链接单选后保持您正在进入页面,因此当您以这种方式来时,您可以在脚本代码中添加此条件,然后根据该条件显示。
猜你喜欢
  • 1970-01-01
  • 2011-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-05
  • 2014-04-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多