jQuery(…).activeform不是Yii中的函数

jQuery(…).activeform不是Yii中的函数,jquery,yii,active-form,Jquery,Yii,Active Form,我正在和Yii一起开发一个项目 我需要在网站的许多页面上使用jQueryUI。因此,我在站点布局中添加了jquery核心库和jquery ui库,以便在所有页面上访问它们 但它会在具有表单(活动表单)的页面上引发问题。我在firebug上看到这个错误: jQuery(...).activeform is not a function 为什么会这样?我如何解决它 谢谢。如果在布局文件中手动包含jQuery核心库,则jQuery可能会再次加载并覆盖附加了Yii插件的原始jQuery对象 您应该改用

我正在和Yii一起开发一个项目

我需要在网站的许多页面上使用jQueryUI。因此,我在站点布局中添加了jquery核心库和jquery ui库,以便在所有页面上访问它们

但它会在具有表单(活动表单)的页面上引发问题。我在firebug上看到这个错误:

jQuery(...).activeform is not a function
为什么会这样?我如何解决它


谢谢。

如果在布局文件中手动包含jQuery核心库,则jQuery可能会再次加载并覆盖附加了Yii插件的原始jQuery对象


您应该改用
Yii::app()->clientScript->registerCoreScript('jquery.ui')

您可能已经在页面中加载了两次jquery,请检查layour/main.php中的代码以及您注册jquery的位置。 在yii中加载jquery默认代码如下

Yii::app()->clientScript

如果您在这里加载jquery,并且可能已经在布局中加载了jquery,请选中这一行。
检查这一点的最佳方法是使用html调试器并查看出现错误的同一页面的页面源代码。

在head.php中将此代码与您的js路径一起添加

<?php YII_DEBUG === true ? Yii::app()->clientScript->scriptMap = array('jquery.js'=>'/js/jquery-3.3.1.js') : Yii::app()->clientScript->scriptMap = array('jquery.min.js'=>'/js/jquery-3.3.1.min.js') ?>
<?php Yii::app()->getClientScript()->registerCoreScript('jquery'); ?>


你也添加了activeform.js jQuery插件吗?它被称为
yiiactiveform
,而不仅仅是
activeform
。只是发现了Jon做的同样的事情。这是Yiactiveform我应该在哪里添加这行?问题是关于布局文件的,所以您应该在
受保护/视图/布局
中查找一些文件。