You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CodeIgniter调用section()报CI_Loader::section()未定义错误如何解决

问题原因

你用到的$this->section()和$this->endsection()是CodeIgniter 4版本专属的布局插槽功能,你当前使用的是CodeIgniter 3版本,框架核心的CI_Loader类没有内置这两个方法,所以会触发方法未定义的致命错误。

解决步骤(快速实现点击弹窗需求)
  1. 先删除视图文件中以下两行代码,消除报错:
<?= $this->section('scripts')?>
<?= $this->endsection()?>
  1. 处理脚本依赖问题:你当前的脚本使用了jQuery语法,但视图中没有引入jQuery库,即使消除报错点击按钮也不会触发弹窗,两种方案选其一即可:
  • 方案一:引入jQuery库
    将jQuery库文件下载到本地静态资源目录后引入,在</body>标签之前添加代码即可,示例:
<script src="/你的本地静态资源路径/jquery.min.js"></script>
<script>
    $(document).ready(function(){
        $(document).on('click', '.alertbox', function(){
            alert("Hello world");
        });
    });
</script>
</body>
  • 方案二:改用原生JS实现,无需依赖任何外部库
    直接把你的script标签内容替换为以下代码:
document.addEventListener('DOMContentLoaded', function() {
    document.querySelector('.alertbox').addEventListener('click', function() {
        alert("Hello world");
    });
});

修改完成后刷新页面,点击按钮即可正常弹出提示框,控制器中原有的视图加载代码无需调整。

内容的提问来源于stack exchange,提问作者JJM50

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 02:36:05