2017-05-08 259 views
0

因此,我對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> 

回答

0

保持您的代碼,因爲它只是改變這樣的事件。

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

我遇到的問題是「your_selector」我不確定它是什麼,因爲它是從可編輯數據庫動態提取的。你的選擇器的意思是前者的意思是 –

+0

。如果你編碼$(「#mySelectBox」)。click(),那麼「#mySelectBox」是選擇器。 – chigs