我想在下拉列表中获取所选选项的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);
您应该将组织 ID 放在选项标记的值中。 喜欢这个
<option value="<?php echo $value['org_id'];?>"><?php echo $value['org_name']; ?></option>
无需为每个选项标记提供 id 属性。当您提交表单时,"组织列表"的值将被选择组织ID。
这是 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"检索它。希望你明白了。
有
几件事你"应该"/"可以"改变。起初我注意到你的ID属性是"org",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')
.
您必须
为每个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>