У меня есть контроллер, который отображает панель свертывания, и если я щелкну заголовок панели, чтобы открыть ее, он отобразит таблицу из запроса jquery. Но он не будет отображаться, даже если запрос jquere будет успешным.
Мой просмотр вот так
<div id="view_kontrol" class="row" style="display: none;">
<div class="col-sm-12 col-md-12 col-lg-12 xs-mb-20">
<div class="accordion" id="accordionExample">
<div id="tampil" class="tampil">
</div>
</div>
</div>
</div>
Контроллер для вызова панели
public function view_kontrol_all(){
$data = $this->kontrol_model->getKec();
foreach ($data as $k) {
$desa = $this->kontrol_model->getDesaByKecId($k->kec_kode);
#onclick="viewAll($(this).data(\'target\'))"
echo ' <div class="card" id="'.$k->kec_id.'">
<a class="btn btn-link" onclick="viewAll(\''.$k->kec_kode.'\')" data-toggle="collapse" data-target="#'.$k->kec_kode.'" aria-expanded="true" aria-controls="collapse'.$k->kec_id.'">
<div class="card-header" id="heading'.$k->kec_id.'">
<h5 class="mb-0">
'.$k->kec_name.'
</h5>
</div>
</a>
<div id="'.$k->kec_kode.'" class="collapse" aria-labelledby="heading'.$k->kec_id.'" data-parent="#accordionExample">
<div class="card-body">
<div id="t'.$k->kec_kode.'" >
</div>
</div>
</div>
</div>';
}
}
Контроллер для отображения таблицы
public function view_tabel(){
$k = $this->input->post('kode');
$desa = $this->kontrol_model->getDesaByKecId($k);
echo ' <table class="table table-bordered table-responsive table-responsive-sm ">
<thead>
<th>No</th>
<th>Desa</th>
<th>Terinput</th>
<th>Diproses Kecamatan</th>
<th>Diproses SKPD </th>
<th>Dapat Dipertimbangkan</th>
<th>Tidak Dapat Dipertimbangkan</th>
</thead>
<tbody>' ;
$i=1;
foreach ($desa as $d) {
$q = $this->kontrol_model->getUsulanKel($d->kel_kode);
$kec = $this->kontrol_model->prosKecByDes($d->kel_kode);
$s = $this->kontrol_model->prosOPDByDes($d->kel_kode);
$set = $this->kontrol_model->setujuByDes($d->kel_kode);
$tol = $this->kontrol_model->tolakByDes($d->kel_kode);
echo ' <tr>
<td>'.$i.'</td>
<td>'.$d->kel_name.'</td>
<td>'.$q->jumlah.'</td>
<td>'.$kec->jumlah.'</td>
<td>'.$s->jumlah.'</td>
<td class="usulan-setuju">'.$set->jumlah.'</td>
<td class="usulan-tolak">'.$tol->jumlah.'</td>
</tr>
';
$i++;
}
echo ' </tbody>
</table>';
}
А вот и ajax
function viewAll(d){
var dd = d.substring(1);
alert(d);
$.ajax({
url : baseUrl+"/kontrol/view_tabel",
type: "ajax",
method : "post",
data : "kode="+d,
beforeSend: function(){
$("#t"+d).html("<img src='"+baseUrl+"/assets/img/loading.gif'> ");
},
success: function(s){
alert('#t'+d);
$("#t"+d).html(s);
}
});
У меня есть другой контроллер, который просто показывает 1 панель, а идентификатор таблицы просто #table
, работает, таблица появляется после запроса jquery