2013-05-28 32 views
1

我有我的驗證規則,在我的模型,像這樣:Yii的複製領域動態和驗證

public $name; 
public $email; 

public function rules() { 
return array(
// name, email 
array('name, email', 'required'), 
// message 
array('nameconfirm, emailconfirm, message, referrerID, referrerName', 'safe'), 
); 
} 

在我看來,我則有:

<div> 
<?php echo $form->labelEx($model, 'name'); ?> 
<?php echo $form->textField($model, 'name', array('name' => 'name[]', 'class' => "form-input")); ?> 
<small<?php $model->getError('name') ? " class='error'" : '' ?>><?php echo $form->error($model, 'name'); ?></small> 
</div> 

<div> 
<?php echo $form->labelEx($model, 'email'); ?> 
<?php echo $form->textField($model, 'email', array('name' => 'email[]', 'class' => "form-input ")); ?> 
<small<?php $model->getError('email') ? " class='error'" : '' ?>><?php echo $form->error($model, 'email'); ?></small> 
</div> 

然後用一些JavaScript我克隆這些領域通過選擇一個按鈕。

我的問題是如何更改我的代碼,以便每次重複名稱和電子郵件時驗證它?

例如,有時我可能只有1個姓名 - 電子郵件,然後選擇一個按鈕,它可能是2 x名稱 - 電子郵件。這可能會上升到10甚至更​​多。

此刻,只有第一個「名稱」和「電子郵件」被驗證。

我相信這是因爲我的屬性被複制,所以它只會驗證1個屬性。是否有可能在模型中使用a?

任何建議將真的幫助。

感謝

+0

可能重複的[如何驗證yii中的表格數據?](http://stackoverflow.com/questions/20419377/how-to-validate-tabular-data-in-yii) –

回答