单击时隐藏/显示表单的一部分。如何调试?

技术问题

我正在学习JS / Jquery,并且试图在单击表单的一部分时使表单的一部分显示和隐藏。我能够打开表格的一部分,但无法再次关闭。

由于在控制台中没有显示错误。我想知道人们将如何调试此类错误?

表格:

<div class="col col-sm-4 more-options">Detailed options</div>

<div class="row advanced-options">
  #part of the form to open and close
</div>

JS / jQuery代码:

$(".more-options").click(function(){
    if ('.advanced-options:hidden') {
        $('.advanced-options').show();
    } else {
        $('.advanced-options').hide();
    }
});
任意的

因此,您的代码中的内容基本上是您的if语句的每次真实值

想象以下情况:

if ('.advanced-options:hidden') {
  console.log(`I'm true`);
} else {
  console.log(`I won't be showed up anywhere`);
}

从技术上讲,它string被评估为true价值,这在代码中引起了您的问题。

我猜解决方案如下:

$(".more-options").click(function(){
  if ($('.advanced-options').is(':hidden')) {
    $('.advanced-options').show();
  } else {
    $('.advanced-options').hide();
  }
});

在其他情况下,您可以使用console.log()不确定您的代码中包含哪些值的步骤进行进一步调试。

我希望这有帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章