Jquery 仅当选中复选框时才显示选择框

Jquery 仅当选中复选框时才显示选择框,jquery,wordpress,checkbox,Jquery,Wordpress,Checkbox,我使用此代码显示/隐藏选择框取决于是否选中复选框: jQuery(document).ready(function($){ $('[type="checkbox"][name="fields[special_proj_checkbox_field][]"]').change(function(){ $('select.select').toggle(this.checked); }); }); 此代码在后端的“编辑帖子”屏幕中执行。 它工作得很好,除了一件事——当我

我使用此代码显示/隐藏选择框取决于是否选中复选框:

jQuery(document).ready(function($){
    $('[type="checkbox"][name="fields[special_proj_checkbox_field][]"]').change(function(){
      $('select.select').toggle(this.checked);
    });
});
此代码在后端的“编辑帖子”屏幕中执行。 它工作得很好,除了一件事——当我第一次进入“编辑帖子”屏幕时,复选框没有被选中,但是选择框是可见的,只有在我选中复选框并再次取消选中后,复选框才会隐藏


如何在默认情况下将其隐藏?

您可以先隐藏选择

jQuery(document).ready(function($){
   var select = $('select.select').hide();
   //or select = $('select.select').toggle();
    $('[type="checkbox"][name="fields[special_proj_checkbox_field][]"]').change(function(){
      select.toggle(this.checked);
    });
});

据我所知,jQuerys
.hide()
函数正在触发
display:none
。因此,您可以首先将
display:none
添加到您的框中,或者在代码的最开头添加一个
$.hide()

您不能只添加
display:none
或将其隐藏在
文档的开头。准备好了
事件回调吗?现在我遇到了另一个问题,在我选中复选框并保存帖子之后,选择框再次变为隐藏@PGKI如果将复选框值保存到数据库,并且在加载post时选中/取消选中复选框,则可以执行初始检查:
var select=$('.select),chk=$('[type=“checkbox”][name=“fields[special_proj_checkbox_field][]”)
如果(chk.is(':checked')选择.hide();
chk.change(function(){select.toggle(this.checked);}
通过这种方式,您无需使用
[type=“checkbox”]
选择复选框。假定名称必须是唯一的,因此只需按名称选择即可。当然取决于当前情况。。。