我正在使用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();
});
});
答案 0 :(得分:4)
根据我在主脚本中的提示,你隐藏了主要的块。虽然它不需要,因为你正在说你的标记中没有显示任何内容。
请查看jsfiddle链接
DEMO
答案 1 :(得分:-1)
它将始终隐藏,因为您已编写代码以隐藏脚本标记中倒数第二行的框(#urlbox)。这将始终在页面加载时执行。