Javascript 如果jquery返回未定义且不工作

Javascript 如果jquery返回未定义且不工作,javascript,jquery,Javascript,Jquery,我在bootstrap中打开下拉列表,将show添加到它们的元素中,效果很好。我还试图关闭其他打开的下拉列表,这就是这个函数的作用。 我的职能: function classremove() { var doesithavetheclass = $('div').hasClass('show');    if (doesithavetheclass == 'true') {    $('div').removeClass('show'); }; return

我在bootstrap中打开下拉列表,将show添加到它们的元素中,效果很好。我还试图关闭其他打开的下拉列表,这就是这个函数的作用。 我的职能:

  function classremove() {
    var doesithavetheclass = $('div').hasClass('show');
    if (doesithavetheclass == 'true') {
      $('div').removeClass('show');
    };
    return doesithavetheclass;
  };

如果
是不起作用的部分,则
。在
if
中运行代码可以正常工作,并且在Chrome控制台中定义变量也可以正常工作,但是在Chrome控制台中运行
if
无法正常工作,即使在我使用show类打开下拉菜单定义变量之前

实际上不需要if语句和大部分函数。您可以简化为仅删除该类

function classremove() {
      $('div').removeClass('show');
  };

不要将布尔值与字符串进行比较<代码>如果(没有类)
是您想要的。@mercator谢谢!这就解决了!但也要注意imvain2的答案
removeClass
如果一开始就没有类,那么它不会做任何事情,所以你根本不需要做这个检查。是的,我遇到了一个非常愚蠢的问题,因为它会关闭所有下拉列表,但我有一个toggleClass,所以它永远不会关闭。