无法在 Blade 中使用 jQuery

Posted

技术标签:

【中文标题】无法在 Blade 中使用 jQuery【英文标题】:Cannot use jQuery in Blade 【发布时间】:2015-03-25 12:50:44 【问题描述】:

我正在使用 Laravel 和它的 Blade 模板引擎,但我在使用 jQuery 时遇到了一些问题。

我有一个名为 master.blade.php 的主模板。在这个文件中,我有将在站点范围内使用的各种 CSS 和 JS 文件。为了更好地组织事情,我只在使用它们的刀片页面上包含单独的 JS 文件。这些模板使用@extends 功能并“继承”master.blade.php 模板。

当我这样做时,我收到 JS 错误:

ReferenceError: $ is not defined

当我将 JS 文件放在 master.blade.php 模板上时,它可以工作。我已经仔细检查了我的加载顺序,以确保首先加载 jQuery,所以我对原因有点困惑。

有什么想法吗? 提前致谢。

【问题讨论】:

这是经典的“jQuery not found”错误。当您尝试使用 jQuery 时,某些原因导致 jQuery 不可用,但如果没有看到您的代码,很难提供细节。 您在访问$ 时检查了吗?似乎您在包含脚本之前正在访问$。能发下你的源代码吗? 另外,尝试将$ 更改为jQuery 是的,我都试过了。我认为这与 Blade 模板引擎有关。 我假设您的页面没有加载 jquery。或者它在自己的命名空间中加载为没有冲突。 【参考方案1】:

你试过了吗?

jQuery(document).ready(function($) 
    /* now you can use $ */
);

【讨论】:

成功了!!不知道如何,但确实如此。谢谢。

以上是关于无法在 Blade 中使用 jQuery的主要内容,如果未能解决你的问题,请参考以下文章

无法使用 Laravel (blade.php) 加载具有较长链接的样式

PHPstorm - 无法在blade.php 文件中设置断点

在 Laravel Blade 循环中使用 JQuery

无法访问@include 之外的变量

如何在 Laravel Blade 上使用 jquery 元素

无法访问我在 Laravel Blade 中的外键