为了账号安全,请及时绑定邮箱和手机立即绑定

根据组合框中选定的数据自动完成:jquery.min.js:

根据组合框中选定的数据自动完成:jquery.min.js:

PHP
撒科打诨 2023-12-15 15:52:08
我试图为我的表单制作自动完成,数据来自选定的组合框。这是我的控制器:public function cari(){    $kode_list=$this->request->getVar('list_produksi_toko');    //$kode_list=$_GET['kode_list'];    $cari['hasil'] =$this->produksiModel->mencari($kode_list);    echo json_encode($cari);} 模型 :public function mencari($keyword){    //$query= $this->builder()->getWhere('list_produksi_toko',array('kode_list'=>$id));    $query = $this->groupBy('kode_list')->like('kode_list', $keyword)->findAll();    return $query;}在我看来,javascript:<script>          $('#produk').change(function(){            var list_produksi_toko = $(this).val();                        $.ajax({             url:"/Produksi/cari",             method: 'post',             data:{list_produksi_toko: list_produksi_toko},             success:function(data){              jQuery.parseJSON(data);               // var ddas = data.buyer                alert (data);                $.each(data, function(key, val){                 $('#buyer').val('<value="'+data['buyer']+'">');                 // document.getElementById('nama_barang').value=val.nama_barang;                 // document.getElementById('jenis_kain').value=val.jenis_kain;                 // document.getElementById('warna').value=val.warna;                 // document.getElementById('pcs').value=val.pcs;               });              }            })          });        </script>我在向每个表单显示每个数据时遇到问题,使用此代码会在控制台中显示错误,如下所示:未捕获的类型错误:无法使用“in”运算符来搜索“长度”; in {“hasil”:[{“kode_list”:“LPT20060001”,“tanggal”:“2020-06-08”,“status_order”:“完整订单”,“买家”:“ ;IK001,Ik Collection”,“nama_barang”:“IK05900,Renata 衬衫”,“jenis_kain”:“Mosscreep”,“warna”:“IK05910,灰色”,“件”:“63” ;,“tanggal_input”:“2020-06-18”,“用户”:“Dena”,“keterangan”:“切割完成”}]}我已经尝试提醒数据,它显示: {“hasil”:[{“kode_list”:“LPT20060001”,“tanggal”:“2020-06-08”,“status_order”:“完整订单”,“买家”:“ IK001,Ik Collection”,“nama_barang”:“IK05900,Renata 衬衫”,“jenis_kain”:“Mosscreep”,“warna”:“IK05910,灰色”,“件”:“63” ,“tanggal_input”:“2020-06-18”,“用户”:“Dena”,“keterangan”:“切割完成”}]}我该如何修复它?
查看完整描述

1 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

您可能需要更改 data 的变量类型才能循环遍历它。您可以通过console.log(typeof data)检查变量的类型。以下是您的问题的可能解决方案,看看这是否对您有帮助。


success:function(data){

    

    console.log(typeof data);  // should be string

    

    data = jQuery.parseJSON(data);

    

    console.log(typeof data); // should be object

   

    $.each(data['hasil'], function(key, val){ 

        

         $.each(val, function(subkey, subval){

             

            console.log(subkey);

            console.log(subval);

    

            // all values are assigned to the elements with the same id as their keys(as your code suggests)

            $('#' + subkey).val('<value="' + subval + '">');

        });

    });

}


查看完整回答
反对 回复 2023-12-15
  • 1 回答
  • 0 关注
  • 95 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信