2016-02-02 3 views
3

Я хочу получить идентификатор выбранной опции в раскрывающемся меню.Как получить идентификатор выбранной опции в выпадающем меню?

У меня есть dropdow, в котором отображаются названия компаний из базы данных. Теперь я хочу получить идентификатор этой компании. Как мне это сделать?

<select required name="org-list" id="org-list" class="form-control">  
    <option value="">Select</option>  
    <?php foreach($org as $value) { ?>    
     <option id="org" value="<?php echo $value['org_name'];?>"><?php echo $value['org_name']; ?></option> 
    <?php } ?> 
</select> 

Модель

public function get_organisation() 
{ 
    $q = $this->db->select('*') 
     ->from('company') 
     ->get(); 
    return $q->result_array(); 
} 

И в мой контроллер я хочу идентификатор выбранного параметра из базы данных.

$data = $this->key_m->array_from_post(array('id','org-list','keys')); 
$data['keys'] = $license; 
var_dump($data); 
+0

Что такое 'value', если вы используете' id'? –

+0

@ VickyGonsalves в моих взглядах я хочу распечатать названия компаний в выпадающем списке, но в моем контроллере хочу получить идентификатор этой компании – Rajan

+0

Ваш вопрос не совсем ясен. Если вы хотите просто отказаться от падения идентификатора. Используйте jquery. Если вы хотите передать это значение серверу, используйте ajax или отправьте форму обратно на сервер. –

ответ

3

Вы должны поместить идентификатор организации в значение тега опции. например

<option value="<?php echo $value['org_id'];?>"><?php echo $value['org_name']; ?></option> 

Не нужно предоставлять атрибут id каждому тегу параметра. При отправке значения формы «org-list» будет выбран идентификатор организации.

+0

Я не получаю id в своем контроллере :(Когда я var_dump я получаю id = FALSE – Rajan

+0

и какое значение «org-list» вы получаете? – C2486

+0

Я получаю это: это название организации «org-list» => строка «Bizrtc» (длина = 6) – Rajan

0

Вы должны указать значение для каждого id атр. для соответствующего <option>

<select required name="org-list" id="org-list" class="form-control"> 
    <option value="">Select</option>  
    <?php foreach($org as $value): ?>    
     <option id="<?php echo $value['org_id'];?>" value="<?php echo $value['org_name'];?>"><?php echo $value['org_name']; ?></option> 
    <?php endforech; ?> 
</select> 
0

Есть несколько вещей, которые вы «должны»/«может» изменить. Сначала я заметил, что ваш идентификатор атрибута «org», идентификаторы должны быть уникальными, а ваш - нет. Хотя, вернемся к актуальному вопросу. Вы должны изменить код следующим образом:

<select required name="org-list" id="org-list" class="form-control"> 
    <option value="">Select</option>  
     <?php foreach($org as $value): ?>    
      <option id="<?php echo $value['org_id'];?>" value="<?php echo $value['org_id'];?>"><?php echo $value['org_name']; ?></option> 
     <?php endforeach; ?> 
</select> 

Теперь в контроллере вы захватить выбранный идентификатор, как: $this->input->post('org-list').

2

Это Аякса путь

$.post(url,{ id : "id value from drop down here" },function(data){ 
    //This is the call back for success 
}) 

Для этого один, вам нужно JQuery. Самый простой способ использования. Url - это место, где вы отправляете сервер обратно.

В вашей стороне сервера уловом как этот

$this->input->post('id') 

Поскольку вы использовали "идентификатор" в запросе Ajax. Поэтому вам нужно получить его, используя имя поля «id». Надеюсь, вы это поняли.

Смежные вопросы