【发布时间】:2013-01-08 05:58:20
【问题描述】:
我想用CActiveForm的AjaxValidation。
我的布局视图文件在启用AjaxValidation之前是这样的:
<html lang="tr-TR" dir="ltr">
<head>
<script src="<?php echo Yii::app()->request->baseUrl; ?>/js/jquery.js"></script>
</head>
如您所见,我在布局页面上调用 jquery 框架(因为我在每个页面上都使用)。
我决定使用 CActiveForm 的 ajax 验证。首先在调用时启用enableAjaxValidation:
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'otel-form',
'enableAjaxValidation'=>true,
)); ?>
然后在我的控制器上取消注释
$this->performAjaxValidation($model);
但我收到了$(...).yiiactiveform is not a function 错误。当我检查页面的源代码时:
如您所见,还包括一个 jquery 库。所以页面上有2个jquery文件。因此,我遇到了错误。接下来我放了这样的东西来禁用jquery。
Yii::app()->clientscript->scriptMap['jquery.js'] = false;
现在 jquery 只加载一次。但是这个结果是:
<html lang="tr-TR" dir="ltr">
<head>
<script type="text/javascript" src="/istanbulcityhotels/assets/cb2686c8/jquery.yiiactiveform.js"></script>
<script src="/istanbulcityhotels/js/jquery.js"></script>
</head>
jquery.yiiactiveform.js 在 jquery.js 之前调用。它应该在 jquery.js 之后调用。 有点糊涂了。我该怎么办?
附加 是的,我读了this 问题,因为标题非常相似,但问题不相同。
谢谢。
【问题讨论】:
标签: yii