1

我的模型中有我的验证规则,如下所示:

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 个名称 - 电子邮件。这可能会达到 10 甚至更多。

目前,仅验证第一个“名称”和“电子邮件”。

我相信这是因为我的属性被复制了,所以它只会验证 1 个属性。可以在模型中为每个使用 a 吗?

任何建议都会有帮助。

谢谢

4

1 回答 1

1

您需要的是表格输入收集:http ://www.yiiframework.com/doc/guide/1.1/en/form.table 但是,这将在服务器端对您有所帮助,除非您创建,否则客户端验证将不起作用表格输入的自定义验证。

于 2013-05-28T18:51:48.520 回答