【问题标题】:Yii Undefined yiiactiveform when not using clientValidationYii 未使用 clientValidation 时未定义 yiiactiveform
【发布时间】:2014-12-08 15:32:12
【问题描述】:

我使用 Yii 1.1.14

我使用表单来捕获电子邮件,而不是使用 Yii ajaxValidation/clientValidation

<?php $form = $this->beginWidget('CActiveForm', array(
    'id' => 'form-newsletter',
    'action' => null,
    'focus' => array($model, 'email'),
    'htmlOptions' => array(
        'role' => 'form',
    ),
)); ?>

我在 js 控制台得到了这个

Uncaught TypeError: undefined is not a function

指的是这个

jQuery('#form-newsletter').yiiactiveform({'validateOnSubmit':true,'validateOnChange':true,'errorCssClass':'has-error has-feedback','successCssClass':'has-success has-feedback','inputContainer':'div.form-group','attributes':[{'id':'NewsletterForm_email','inputID':'NewsletterForm_email','errorID':'NewsletterForm_email_em_','model':'NewsletterForm','name':'email','enableAjaxValidation':true,'clientValidation':function(value, messages, attribute) {

我还检查了jquery.yiiactiveform.js 是否存在。

问题是,我不想使用默认的ajaxValidation/clientValidation,为什么要加载?以及为什么它告诉 yiiactiveform 未定义?

谢谢。

【问题讨论】:

    标签: php jquery ajax yii


    【解决方案1】:

    检查您是否包含比 Yii 包含的更新版本的 jQuery(例如 2.x)用于验证。

    【讨论】:

    • 但是,我仍然没有启用 clientValidation。那个 yiiactiveform js 应该不会出现吧?
    • @zmiftah,完美。这导致我的应用程序出现问题!我添加了两个不同版本(2.x 和 1.10)的 jQuery 文件!
    【解决方案2】:

    如果您使用其他自定义 javascript,则必须在您的布局代码中使用,例如:

    Yii::app()->clientScript->registerScriptFile(Yii::app()->request->baseUrl . '/js/bootstrap.min.js');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多