2015-10-27 94 views
0

當我通過Ajax驗證表單時,顯示錯誤消息時出現了一些問題。 Ajax驗證正常工作,但不顯示錯誤消息。在控制檯我得到驗證錯誤消息,還當我輸入Yii ajax驗證不顯示錯誤消息

<?php echo $form->errorSummary($model); ?> 

它還顯示所有的錯誤消息,但我需要顯示對應於模型的相應屬性的每個消息。所以這個:

<?php echo $form->error($model, 'date_check_in') ?> 

不顯示錯誤信息。 這裏是一塊形式

<?php $form = $this->beginWidget('CActiveForm', array(
'id' => 'form-main', 
'action' => Yii::app()->createUrl('/kolobok/default/order'), 
'htmlOptions' => array(
    'class' => 'form-horizontal', 
), 
'enableAjaxValidation'=>true, 
'enableClientValidation'=>false, 
'clientOptions'=>array(
    'validateOnSubmit'=>true, 
    'validateOnChange'=>false, 
    'validateOnType'=>false, 
    'afterValidate' => 'js: function(form, data, hasError) { 
       if (data == null) return true; 
     if (data.length && data.length > 0) return false; 
     if (data.length === 0) return true; 
     for (var key in data) { 
      if (hasOwnProperty.call(data, key)) return false; 
     } 
     return true; 
    }' 
), 
)); ?> 

我的動作:

public function actionOrder() 
{ 
    $model=new Order; 
    if(isset($_POST['ajax']) && $_POST['ajax']==='form-main') 
    { 
     echo CActiveForm::validate($model); 
     Yii::app()->end(); 
    } 
    if(isset($_POST['Order'])) 
    { 
     $model->attributes=$_POST['Order']; 

     if($model->save()){ 
      Yii::app()->user->setFlash('success', "Data1 saved!"); 
      $this->redirect(Yii::app()->request->urlReferrer); 
     } 

    } 

} 

此外,形式經由小組件中顯示。我錯了什麼?

回答

1

問題出在輸入字段的ID。我刪除了ID,它有幫助!

相關問題