我想在下拉列表中获取所选选项的ID。
我有一个显示数据库公司名称的dropdow。现在我想得到那家公司的id。我该怎么做?
<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();
}
在我的控制器中,我想从数据库中选择选项的ID。
$data = $this->key_m->array_from_post(array('id','org-list','keys'));
$data['keys'] = $license;
var_dump($data);
答案 0 :(得分:3)
您应该将组织ID放在选项标记的值中。像这样
<option value="<?php echo $value['org_id'];?>"><?php echo $value['org_name']; ?></option>
无需为每个选项标记提供id属性。当您提交表单值“org-list”时,将选择组织ID。
答案 1 :(得分:2)
这是ajax方式
$.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”。所以你必须使用字段名'id'来检索它。希望你明白。
答案 2 :(得分:0)
您必须为每个id
attr提供价值。对应<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>
答案 3 :(得分:0)
有些事情你应该“/可能”改变。起初我注意到你的ID属性是“org”,Id应该是唯一的而你的ID不是。虽然,回到实际的问题。您应该按照以下方式更改代码:
<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>
现在,您可以在控制器中获取所选的ID,如:$this->input->post('org-list')
。