2014-01-30 89 views
3

我想在Yii中设置successCssClass和errorCssClass所有表单的输入。我如何做到这一点。默认情况下为所有输入设置successCssClass和errorCssClass

+0

此问题尚不清楚。您是否想要更改成功和错误的css类的名称,或者您是否想要将所有输入设置为默认情况下都有成功和/或错误类? – topher

+0

你为什么不专注于阐述你的问题 –

+0

我想改变成功和错误的类名称,但是对于所有的输入。现在我使用bootstrap ui,并希望所有输入的错误/成功类都是错误并且成功。 – Felix

回答

1

不幸的是默认值是在jquery活动表单插件中定义的,例如/framework/web/js/jquery.yiiactiveform.js看在最后。

然而,随着@Michiel建议,您可以扩展CActiveForm某事像这样:

MyActiveForm extends CActiveForm{ 

    public function error($model,$attribute,$htmlOptions=array(),$enableAjaxValidation=true,$enableClientValidation=true) 
    { 
     //my defaults 

     $defaults=array('errorCssClass'=>'myErrorCss', 
     'successCssClass'=>'mySuccessCss', 
     'validatingCssClass'=>'myValidationCss'); 

     $htmlOptions=array_merge($defaults,$htmlOptions); 

     return parent::error($model,$htmlOptions,$enableAjaxValidation,$enableClientValidation); 

    } 
} 

而且你必须使用你的新类如

<?php $form = $this->beginWidget('MyActiveForm', array(
    .. 
    ?> 

我没有看到一个更好的办法马上。您可以扩展jquery.yiiactiveform插件或CActiveForm

相关问题