如何在Yii框架中使用jQuery.

rag*_*hul 5 javascript jquery yii

如何在yii中使用jquery/javascript?

如何在yii中使用我的脚本?

为什么这与以任何其他方式使用jQuery有什么不同?

rag*_*hul 11

使用Yii的registerScript加载我们的jQuery,如果通常使用的话如下所示:

$(document).ready(function(){
    alert('hello');
    // Enter code here
});
Run Code Online (Sandbox Code Playgroud)

现在如果我们像这样使用Yii的脚本:

<?php
    Yii::app()->clientScript->registerScript('helloscript',"
        alert('hello');
    ",CClientScript::POS_READY);
?>
Run Code Online (Sandbox Code Playgroud)

您将看到需要将3个内容传递给Yii :: app() - > clientScript-> registerScript函数,首先是脚本名称,这并不重要; 它必须与同一页面上的任何其他脚本名称唯一.链接


Sam*_*aye 11

如何在yii中使用jquery?

如上所述,您可以注册新的脚本块,也可以注册新的外部脚本文件.您还可以在插件中注册资源,这些资产将占用整个JS文件夹并将它们组合到您的应用程序中.

所以有很多方法可以在Yii中使用JQuery.

如何在yii中使用我的jquery

JQuery预先捆绑并使用JQuery激活,JQuery库本身被认为是核心脚本,因此没有必要将自己的JQuery放入其中.

您可以通过以下方式覆盖内置的JQuery:

$cs = Yii::app()->clientScript;
$cs->scriptMap = array(
'jquery.js' => Yii::app()->request->baseUrl.'/js/jquery.js',
'jquery.yii.js' => Yii::app()->request->baseUrl.'/js/jquery.min.js',
);
$cs->registerCoreScript('jquery');
$cs->registerCoreScript('jquery.ui');
Run Code Online (Sandbox Code Playgroud)

在布局,动作或视图中的某个地方.我更喜欢把它放在布局中并亲自管理我自己的JQuery版本.

为什么这与以任何其他方式使用jQuery有什么不同?

主要是由于框架及其组件的标准化和互操作性.与JQuery UI小部件和JQuery元素预先捆绑内置钩子使得框架更容易构建可重用且干净的JS对象,以便在您的应用程序中使用.

我也喜欢JQuery,所以在我看来它预先捆绑是有道理的.然而,这不是对JQuery作为唯一的JS库/框架的呼吁,你应该在选择之前考虑哪个最适合你.