如何在 yii 中使用 jquery/javascript?,
如何在 yii 中使用我的脚本?
为什么这与以任何其他方式使用 jQuery 有什么不同?
如何在 yii 中使用 jquery/javascript?,
如何在 yii 中使用我的脚本?
为什么这与以任何其他方式使用 jQuery 有什么不同?
使用 Yii 的 registerScript 加载我们的 jQuery,如果正常使用它看起来像这样:
$(document).ready(function(){
alert('hello');
// Enter code here
});
现在如果我们像这样使用Yii 的脚本:
<?php
Yii::app()->clientScript->registerScript('helloscript',"
alert('hello');
",CClientScript::POS_READY);
?>
你会看到你需要向 Yii::app()->clientScript->registerScript 函数传递 3 个东西,首先是一个脚本名称,这并不重要;它必须与同一页面上的任何其他脚本名称唯一。关联
如何在 yii 中使用 jquery?
如上所述,您可以注册一个新的脚本块,也可以注册一个新的外部脚本文件。您还可以在插件中注册资产,这些资产将获取整个 JS 文件夹并将它们组合到您的应用程序中。
所以在 Yii 中有很多使用 JQuery 的方法。
如何在 yii 中使用我的 jquery
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');
在您的布局、操作或视图中的某处类似的东西。我更喜欢将它放在布局中并亲自管理我自己的 JQuery 版本。
为什么这与以任何其他方式使用 jQuery 有什么不同?
主要是由于框架及其组件的标准化和互操作性。预先捆绑了 JQuery UI 小部件和 JQuery 元素的内置钩子,这使得框架更容易构建可重用和干净的 JS 对象以在您的应用程序中使用。
我也喜欢 JQuery,所以在我看来,预先捆绑它是有意义的。然而,这并不是要求 JQuery 成为唯一的 JS 库/框架,您应该在选择之前真正考虑哪个最适合您。
这是我刚刚在我的应用程序开发中使用的示例脚本:
<?php
$js = "
$('body')
.on('click', '#cancelCreateInductionTemplate, #closeDialogBox', function (e) {
// Close #openDialog
e.preventDefault();
$('#openDialog').dialog('close');
});
";
Yii::app()->clientScript->registerScript('cancelCreateInductionTemplate', $js, CClientScript::POS_READY);
?>