Codeigniter基于其他选择选项更新选择选项

问题描述:

因此,我对codeignitor相当陌生,并希望得到一些帮助。下面我有我的控制器(Estimates.php),我的模型(Invoice_items_model.php)和我的视图(_add_edit_items.php)。由于完整版本相当长,这些是缩短版本。Codeigniter基于其他选择选项更新选择选项

我期待做的是让它在单击其中一个选项时它将检查该子选项的$ suboption ['non_compatible']字段。如果任何其他选择选项中的子选项与该非兼容字段匹配,则它将被禁用。

我发现this post,我可能可以使用但我不知道如何为动态生成的选择做一个onchange事件。

Estimates.php

`public function estimate($id = ''){$data['platforms']   = $this->invoice_items_model->get_platforms(); 
$data['options']   = $this->invoice_items_model->get_options(); 
$data['suboptions']  = $this->invoice_items_model->get_suboptions(); 
$this->load->view('admin/estimates/_add_edit_items', $data);}` 

Invoice_items_model.php

public function get_platforms() 
{ 
    $platforms = array(); 
    $this->db->order_by('name', 'asc');  

    return $this->db->get('tblplatforms')->result_array(); 
} 
public function get_options() 
{ 
    $options = array(); 

    return $this->db->get('tblplatform_options')->result_array(); 
} 
public function get_suboptions() 
{ 
    $suboptions = array(); 

    return $this->db->get('tblplatform_suboptions')->result_array(); 
} 

}”

_add_edit_items.php

  <?php foreach($options as $option) { ?> 
      <tr> 
       <td></td> 
       <td><p><?php echo $option['name']; ;?>:</p></td> 
       <td> 
       <select name="<?php echo $option['name']; ?>" id="<?php echo $option['name']; ?>" rows="4" class="form-control">      
        <?php foreach($suboptions as $suboption) { ?> 
        <?php if($suboption['plat_option'] == $option['name']) { ?> 
         <option value="<?php echo $suboption['name']; ?>" id="<?php echo $suboption['name']; ?>"><?php echo $suboption['name']; ?></option> 
        <?php } ?> 
        <?php } ?> 
       </select> 
       </td> 
      </tr> 
      <?php } ?> 
      <tr> 

保持您的代码,因为它只是改变这样的事件。

$(document).on("onChange", "your_selector", function() { 
    // your code 
} 
+0

我遇到的问题是“your_selector”我不确定它是什么,因为它是从可编辑数据库动态提取的。你的选择器的意思是前者的意思是 –

+0

。如果你编码$(“#mySelectBox”)。click(),那么“#mySelectBox”是选择器。 – chigs