2017-08-24 15 views
0

我的代码片段:,我使用相同的名称为多个输入(type =“text”),在提交过程中,我想至少允许一个值,我如何验证?

<div class="col-sm-2"> 
    <label>Weight</label> 
    <?php for($i=0;$i<4;$i++){ ?> 
     <input type="text" placeholder="Weight" name="weight[]" id="weight_<?php echo $i; ?>" class="form-control weight_cls" /> 
    <?php } ?> 
    <div class="err"><?php echo form_error('weight[]'); ?></div> 
</div> 

如果我用下面的CI验证:

$this -> form_validation -> set_rules('weight[]', 'Weight', 'required|numeric'); 

然后,它不会允许,直到填满所有领域..​​

我想允许至少一个。 。 我怎么能够??

+0

不要使用CodeIgniter的表单验证,但写自己的规则。像'if(count($ this-> input-> post('weight'))== 0){// error}' –

+0

但是需要对其他字段进行codeigniter验证..那我该怎么办? – Amita

+0

将您的规则放在CodeIgniter表单验证规则之后 –

回答

1

获取输入表格形式

$weight = $this->input->post('weight'); //or get as your form 

$权重是一个数组,所以你可以使用foreach循环的每个元素验证如下:

foreach($weight as $key=>$val) 
{ 
    $this->form_validation->set_rules("weight[".$key."]", "weight", 'required|numeric'); 
    // you can have one more row as per your requirement. 
} 
相关问题