首页 > 解决方案 > null 不是展开全部/全部关闭的对象错误

问题描述

为希望标签在命令下展开和折叠的客户网站创建了一个表格。我添加了一个展开/折叠所有按钮,但收到“null 不是对象错误”。

它在我的 HTML 编辑器 (Coda) 中完美运行 - 但是在添加到客户端网站 ( https://builderincubator.cloudaccess.net/homebuilder-software-table ) 时它不起作用。

我正在使用这样的按钮:

<button class="btn btn-primary" id="openall">Open All</button> <button class="btn btn-primary" id="closeall">Close All</button>

脚本如下:

<script>
    $('table').on('click', 'tr.parent ', function() {
        $(this).closest('tbody').toggleClass('open');
    });

    $('#openall').on('click', function() {
        $('tbody').addClass('open');
    });

    $('#closeall').on('click', function(){
        $('tbody').removeClass('open');
    });     
</script>

任何想法都表示赞赏。

标签: jquery

解决方案


您代码中的$函数不是指 jQuery,而是指Mootools Core$函数

如果您想改用 jQuery 选择器/函数,请将您$的 s 替换为jQuerys。

jQuery('table').on('click', 'tr.parent ', function() {
  jQuery(this).closest('tbody').toggleClass('open');
});
jQuery('#openall').on('click', function() {
  jQuery('tbody').addClass('open');
});

jQuery('#closeall').on('click', function() {
  jQuery('tbody').removeClass('open');
});

确认/调试:

  1. 转到您的页面
  2. 打开控制台
  3. 键入$并按下Enter
  4. 它返回 的函数定义$
  5. 单击它 - 它会为您带来定义的来源。
  6. 注意文件名:mootools-core.js.

推荐阅读