Yii生成了一个jQuery版本1.71.我如何强制Yii使用一个特定的jQuery版本

tag5nh1u  于 2022-11-09  发布在  jQuery
关注(0)|答案(2)|浏览(115)

我在尝试合并多个日期选择器时遇到了一个问题,可以在此处找到:http://multidatespickr.sourceforge.net/
我遇到的问题在下面的stackoverflow中解释:https://stackoverflow.com/questions/17920743/jquery-multiple-datepicker-selected-dates-not-loading-to-textbox
由于我没有得到任何回应,我开始深入研究代码,发现yii的自动生成jQuery是所有问题的症结所在。
因此,我所做的就是删除下面的jQuery/jquery.min.js,并包含这个. jquery-1.7.2.js
现在在控制台上我得到这个错误
网络错误:404-页面没有找到页面不存在.
不过,我能够让多个日期选择器工作,这是我真实的的需要。:)
现在我需要的是,因为我只是手动删除,并得到了这个工作,但我想知道如何强制一个视图文件(index.php)在yii框架,以加载只在页面中定义的脚本,而不是任何东西从主模板或其他地方定义.
下面是一个html输出,我只需要在一个特定的视图中加载那些用蓝色指出的。

tp5buhyn

tp5buhyn1#

在组件数组中的配置中添加

'clientScript' => array('scriptMap' => array('jquery.js' => false, ))

然后在布局标题中加载所需的版本:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>

对于yii 1.1.13和更低版本以及jquery 1.9+,你需要修补jquery.ba-bbq来解决一些冲突。
您所做的(手动删除jquery)非常糟糕。请恢复此操作。
若要排除某些脚本,请使用scriptmap它可以在操作呈现之前在控制器中使用,也可以在配置文件中使用
所有全局脚本(jquery、jquery-ui等)必须位于主布局的标题中。仅在视图中加载自定义脚本或插件。

euoag5mw

euoag5mw2#

config/main.php中添加

'components' => [
    'clientScript' => ['scriptMap' => ['jquery.js' => 'http://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js']],
]

相关问题