ajax选择具有多个相关数据的数据

我想显示从数据库循环的复选框,如果我尝试id_kendaraan在字段中选择数据,然后显示该 ID 中的数据。


这是我的视图代码:


<div class="modal fade" id="tambah" tabindex="-1" role="dialog" aria-labelledby="largeModal" aria-hidden="true">

    <div class="modal-dialog">

        <div class="modal-content">

            <div class="modal-header">

                <button type="button" class="close" data-dismiss="modal" aria-hidden="true">x</button>

                <h3 class="modal-title" id="myModalLabel">Tambah Pemeliharaan</h3>

            </div>

            <form class="form-horizontal" method="post" action="<?php echo base_url()?>Data/Pemeliharaan/Tambah">

                <div class="modal-body">

                    <div class="form-group">

                    <label class="control-label col-xs-3">Nama Kendaraan</label>

                        <div class="col-xs-8">

                           <select class="form-control"  name="id_kendaraan" id="id_kendaraan" required>

                            <option>Pilih Kendaraan</option>

                            <?php

                            if(!empty($kendaraan_)) {

                            foreach ($kendaraan_ as $isi) {

                            ?>

                            <option value="<?php echo $isi['id_kendaraan']?>"><?php echo $isi['nama']?> - <?php echo $isi['platno']?></option>

                            <?php }} ?>

                            </select>

                        </div>

                    </div>

                    <?php

                    $index =0;          

                    foreach ($subkriteria_ as $kr_key => $kriteria) {

                    ?>


我的控制器:


function GetKendaraanById(){

        $id_kendaraan=$this->input->post('id_kendaraan');

        $data=$this->PemeliharaanModel->GetById($id_kendaraan);

        echo json_encode($data);

      }

我从视图$id_kendaraan中获取参数的数据。

但如果我尝试这段代码,字段 tahun_beli, id jenis 会成功显示在视图中。但备件中的复选框循环夸大了。


我尝试了json,数据是正确的,显示tahun_beli,,id_jenis是显示,sparepart是由id_jenis显示


慕莱坞森
浏览 96回答 1
1回答

qq_花开花谢_0

我检查了你的代码,我认为问题出在这一点:<script type="text/javascript">$(document).ready(function(){&nbsp; &nbsp; &nbsp; &nbsp; $('#id_kendaraan').on('input',function(){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; var id_kendaraan=$(this).val();&nbsp; &nbsp; &nbsp; &nbsp; $.ajax({&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; type : "POST",&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; url&nbsp; : "<?php echo base_url('Data/Pemeliharaan/GetKendaraanById')?>",&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dataType : "JSON",&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; data : {id_kendaraan: id_kendaraan},&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cache:false,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; success: function(data){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $('#sparepartList').empty(); // clear all sparepart checkboxes&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $.each(data, function(id_kendaraan, tahun_beli, id_jenis){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $('[name="isi_kriteria[]"]').val(data.tahun_beli);&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $('[name="id_jenis"]').val(data.id_jenis);&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $.each(data.spareparts, function (key, value) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; let li = $('<li><input type="checkbox" name="id_sparepart[]" value="' + value.id_sparepart + '" />' +&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '<input type="text" name="sparepart" value="' + value.sparepart + '" /></li>');&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $('#sparepartList').append(li);&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; });&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; });&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; });&nbsp; &nbsp; &nbsp; &nbsp; return false;&nbsp; &nbsp; });});</script>尝试删除第一个 $.each,您的代码将是这样的<script type="text/javascript">$(document).ready(function(){&nbsp; &nbsp; &nbsp; &nbsp; $('#id_kendaraan').on('input',function(){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; var id_kendaraan=$(this).val();&nbsp; &nbsp; &nbsp; &nbsp; $.ajax({&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; type : "POST",&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; url&nbsp; : "<?php echo base_url('Data/Pemeliharaan/GetKendaraanById')?>",&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dataType : "JSON",&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; data : {id_kendaraan: id_kendaraan},&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; cache:false,&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; success: function(data){&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $('#sparepartList').empty(); // clear all sparepart checkboxes&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;$('[name="isi_kriteria[]"]').val(data.tahun_beli);&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $('[name="id_jenis"]').val(data.id_jenis);&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $.each(data.spareparts, function (key, value) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; let li = $('<li><input type="checkbox" name="id_sparepart[]" value="' + value.id_sparepart + '" />' +&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; '<input type="text" name="sparepart" value="' + value.sparepart + '" /></li>');&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $('#sparepartList').append(li);&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; });&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; });&nbsp; &nbsp; &nbsp; &nbsp; return false;&nbsp; &nbsp; });});</script>希望它能起作用
打开App,查看更多内容
随时随地看视频慕课网APP