我正在尝试在多对多的sql表中获取数据(请参阅上载的图像),然后将其获取到视图表中(通过client_id获取user_id),问题是,当不再选择该下拉列表时,我添加了ajax脚本,并且该表未加载必要的信息。请帮助我解决这一问题。非常感谢你。
-查看表格和表格-
<select id="client_id" name="client_id" class="form-control" >
<option value="">Select Client</option>
<?php foreach ($clientList as $value){ ?>
<option data-client-id="<?=$value['id']?>" value="<?php echo $value['id'] ?>"><?php echo $value['account_name'] ?></option>
<?php }?>
</select>
<table style="width: 100%" class="table">
<thead><tr><th>No.</th><th>user name</th><th>sl_rate</th></tr></thead>
<tbody id="table-details"></tbody>
</table>
--- AJAX ---
<script type="text/javascript">
$(document).ready(function(){
$('#client_id').change(function(){
var id=$(this).val();
var base_url = '<?php echo base_url() ?>';
var $sr = ($(".jdr1").length + 1);
var rowid = Math.random();
$.ajax({
url: base_url + "client/getClientUser",
method : "POST",
data: {'client_id': client_id},
async : true,
dataType : "JSON",
success: function(data){
var html = '';
var i;
for(i=0; i<data.length; i++){
html += '<tr class="jdr1" id="' + rowid + '">' +
'<td><span class="btn btn-sm btn-default">' + $sr + '</span><input type="hidden" name="count[]" value="'+Math.floor((Math.random() * 10000) + 1)+'"></td>' +
'<td><input type="text" id="user_id-' + $sr + '" name="user_id[]" value="" /></td>' +
'<td><input type="text" id="sl_rate-' + $sr + '" name="sl_rate[]" value="" /></td>' +
'</tr>'
}
$('#table-details').html(html);
}
});
return false;
});
});
-控制器-
public function getClientUser(){
$client_id = $this->input->get('client_id');
$data = $this->ClientModel->getUserByClientId($client_id);
echo json_encode($data);}
-模型-
public function getUserByClientId($clientid){
$this->db->select('client_user.id, client_user.user_id, users.givenname');
$this->db->from('client_user');
$this->db->join('users', 'users.id = client_user.client_id');
$this->db->where('client_user.client_id', $clientid);
$this->db->order_by('client_user.id');
$query = $this->db->get();
return $query->result_array();
}
答案 0 :(得分:0)
我认为client_id
变量丢失了您正在传递数据。
data: {'client_id': client_id}