【发布时间】:2015-03-24 17:23:15
【问题描述】:
我正在 Yii 1.1.16 中处理多个联系人表单。用户可以在其中添加多个电话号码。
问题是,我将如何使用 Yii 的 rules() 验证这一点?
<div class="form-group">
<?php
echo $form->labelEx($model,'contacts', array('class'=>'col-md-3 control-label'));
?>
<div class="col-md-9">
<div class="multiple-contact multiple-form-group input-group padding-bottom-10px" data-max="5">
<div class="input-group-btn input-group-select">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<span class="concept">Phone</span> <i class="fa fa-caret-down"></i>
</button>
<ul class="dropdown-menu" role="menu">
<li><a href="#phone">Phone</a></li>
<li><a href="#fax">Fax</a></li>
<li><a href="#mobile">Mobile</a></li>
</ul>
<?php echo $form->textField($model,'contacts',array('type'=>'text', 'class'=>'input-group-select-val', 'name'=>'contacts[type][]','value'=>'phone')); ?>
</div>
<?php echo $form->textField($model,'contacts',array('size'=>60,'maxlength'=>255, 'name'=>'contacts[value][]','class'=>'form-control')); ?>
<?php echo $form->error($model,'contacts'); ?>
<span class="input-group-btn">
<button type="button" class="btn btn-success btn-add"><i class="fa fa-plus"></i></button>
</span>
</div>
</div>
</div>
我试过用这个,但不起作用
public function rules()
{
return array(
array('contacts[value][]', 'required'),
array('contacts[value][]', 'integerOnly'=>true),
array('contacts[value][]','type','type'=>'array','allowEmpty'=>false)
);
}
这里是一个示例Fiddle,介绍了 jQuery 端如何工作。我希望它能够通过'enableAjaxValidation'=>true, 进行验证。此外,当添加更多字段时,它会复制输入的id。并且没有完成任何ajax帖子onblur/onfocus
【问题讨论】:
-
如何将它们保存在数据库中?它们是在另一个表中单独记录吗?
-
会将它们保存在不同的表中。只是不确定如何在 Yii 中验证它们。
-
@user3535256 它必须是一个int,并且是必需的
标签: php jquery validation yii