我遇到一个问题,即发送到视图的数据与查询生成的数据量不匹配。 仅显示单个数据。
这是我的函数:
function lokasi_ajax() {
var kode_lokasi = $('#kode_lokasi').val();
$.ajax({
url : '<?= base_url() ?>index.php/asset/asset_dijual_proses/lokasi_ajax',
data: 'kode_lokasi='+kode_lokasi,
success : function (data) {
var json = data;
value = JSON.parse(json);
console.log(value.kode_aset);
}
});
}
这是我的控制器上的方法:
function lokasi_ajax()
{
$kode_lokasi = $_GET['kode_lokasi'];
$data =array();
$query = $this->db->query("SELECT id_reg, item_lokasi, item_barang FROM asset_item
WHERE item_lokasi= '$kode_lokasi'");
foreach ($query->result() as $row) {
$data = array(
'kode_aset' => $row->id_reg,
'item_lokasi' => $row->item_lokasi,
'item_barang' => $row->item_barang
);
}
echo json_encode($data);
}
应该生成的数据量是这样的:
来自数据库管理系统的结果数据
但是从响应中,JSON只显示一个数据,如下所示: JSON 响应结果
foreach 循环重新分配数据。 您需要将其添加到数组中。
foreach ($query->result() as $row) {
$data[] = array(
'kode_aset' => $row->id_reg,
'item_lokasi' => $row->item_lokasi,
'item_barang' => $row->item_barang
);
}