验证CodeIgniter中的组合框

时间:2016-04-26 17:28:26

标签: validation combobox codeigniter-3

我正在使用CodeIgniter 3,我正在尝试验证我的两个组合框。

我的代码是这样的:

视图:

<tr>
     <td >
        <?php $extra=' class="selectCombo"';
            $busVal=array();
            $busVal[]="Select";
            foreach($values as $val){
                $busVal[$val->bus_id]=$val->bus_no;
            }
        echo form_dropdown('bus_id', $busVal,set_value('bus_id'),$extra);
        ?> 
       </td>
       <td><?php echo form_error('bus_id');?></td>
</tr>
<tr>
     <td >
        <?php
            $extra=' class="selectCombo"';
            $route=array();
            $route[]="Select";
            foreach($values as $val){
                $route[$val->route_id]=$val->route_name;
            }
            echo form_dropdown('route_id',$route,set_value('route_id'),$extra);
            ?> 
           </td>
           <td><?php echo form_error('route_id');?></td>
</tr>

我的控制器代码是这样的:

public function add()
{
$this->form_validation->set_rules('bus_id', 'Bus', 'trim|required|callback_check_Bus');
$this->form_validation->set_rules('route_id', 'Route Name', 'trim|required|callback_validate_route');
if ($this->form_validation->run() == FALSE) {
    echo 'Error';
}else{
  }
}
public function check_Bus($val){
        if($val ==0)
        {
          $this->form_validation->set_message('select_validate', 'Please Select Bus.');
          return false;
        } 
        else
        {
          return true;
         }
    }

     public function validate_route($val){
        if($val ==0)
        {
          $this->form_validation->set_message('select_validate', 'Please Select Route.');
          return false;
        } 
        else
        {
          return true;
         }
    }

我收到以下两个字段的消息:

  

无法访问与您的字段名称Bus相对应的错误消息。(check_Bus)
  无法访问与您的字段名称对应的错误消息   路线名称。(validate_route)

我该怎么办?

1 个答案:

答案 0 :(得分:2)

使用此代码正常工作。

var matchingIndex = tempList.FindIndex(x => x.Key == "fahrzeugA");
if (matchingIndex >= 0)
    tempList[matchingIndex] = new KeyValuePair<string, string>("fahrzeugA", "s");

参见代码

callback validation rule
callback_fieldname_check        
//function name callback_fieldname_check (){

}

// Set message - fieldname_check