我有这个下拉列表从数据库中提取选项。我想知道如何在选择之后获得所选选项的值,数据库中的其他数据将以表格或形式显示? 它看起来像这样
选择之前
从下拉列表中选择:option1
名称:
年龄:
选择
后从下拉列表中选择:option2
姓名:迈克尔 年龄:21
控制器
public function salesorders() {
if ($this->session->userdata('logged_in')) {
$this->header2();
$data['groups'] = $this->secretary_model->getAllGroups();
$this->load->view('secretary/transactions',$data);
} else {
redirect('secretary/sec_login_view');
}
}
模型
function getAllGroups()
{
$query = $this->db->query('SELECT firstname FROM tblcustomer');
return $query->result();
}
查看
<?php
echo "Select Customer";
$options = array();
foreach($groups as $group)
{
$options[$group->firstname] = $group->firstname;
}
echo form_dropdown('dropdown', $options);
?>
<br>
<br>
<br>
<table id="myTable" class="table table-bordered" >
<thead >
<tr>
<th>Order #</th>
<th>Customer Name </th>
<th>Items</th>
<th>Note</th>
<th>Qtt.</th>
<th>Total Price</th>
<th>Shipping Address</th>
<th>Status</th>
<th>Edit</th>
</tr>
</thead>
<tbody>
答案 0 :(得分:1)
似乎您需要在页面加载时填充第一个下拉字段,而不是需要AJAX调用另一个传递所选名称的方法。在该方法中,您将拥有将AJAX输入值传递给模型的代码,该模型按值(在本例中通过名称)返回数据,您将以json_encode的形式返回到ajax。
$(document).ready(function(){
$('.dropdownElementClass').on('change', function(){
var value = $(this).val();
$.ajax({
method: "POST",
url: "<?php echo base_url('secretary/getDataByName');?>",
data: { name: value }
})
.done(function( output ) {
$('.classOfElementExpectingData').text( output );
});
});
});
//控制器的下一个代码
public function getDataByName()
{
if ($this->input->is_ajax_request()) {
echo $this->Secretary_model->getDataByName( $this->input->post('name') ) != FALSE ? json_encode( $this->Name_m->getDataByName( $this->input->post('name') ) ) : 'No data for selected name.' ;
} else {
echo 'No direct script access allowed.';
}
}
您可以在谷歌甚至YouTube上搜索相当数量的教程。研究this one,可以帮助你。或者你会搜索类似&#34; codeigniter ajax&#34;在这个地方第一。我相信你可以找到许多类似的问题和答案。祝你好运。