Laravel Jquery Dependent dropdown showing error GET http://localhost:8000/dosen/pengajuan/getKK/4 404 (Not Found)

Viewed 102

I want to populate dropdownlist based on other selected dropdownlist, the id from first dropdown has been get on my url, but still showing an error like this

http://localhost:8000/dosen/pengajuan/getKK/3 Not Found

this is my dropdown code

<div class="form-group">
                        <label>Jenis Kegiatan : </label>
                        <select class="form-control select2bs4" name="jk_id" id="jk_id" style="width: 100%;">
                            <option selected disabled>--- Pilih Jenis Kegiatan ---</option>
                            @foreach ($jkData as $jk => $val)
                            <option value="{{$jk}}">
                                {{$val}}
                            </option>
                            @endforeach
                        </select>
                    </div>
                    <div class="form-group">
                        <label>Komponen Kegiatan : </label>
                        <select class="form-control select2bs4 " name="kk_id" id="kk_id" style="width: 100%;">
                            <option disabled="true" selected="true">--- Komponen Kegiatan ---</option>
                        </select>
                    </div>

and this jquery code

<script type="text/javascript">
jQuery(document).ready(function () {
    jQuery('select[name="jk_id"]').on('change', function () {
        var jk = jQuery(this).val();
        if (jk) {
            jQuery.ajax({
                url: '/dosen/pengajuan/getKK/' +jk,
                type: "GET",
                dataType: "json",
                success: function (data) {
                    console.log(data);
                    jQuery('select[name="kk_id"]').empty();
                    jQuery.each(data, function (key, value) {
                        $('select[name="kk_id"]').append('<option value="' +
                            key + '">' + value + '</option>');
                    });
                }
            });
        } else {
            $('select[name="kk_id"]').empty();
        }
    });
});

and this is my controller function

public function view_pengajuan()
{
    $dosenData = dosen::all();
    $jkData= DB::table('jeniskegiatans')->pluck("nama_jk","id");
    return view('dosen.create_pengajuan',compact('jkData','dosenData'));
}
public function getKK($id)
{
    $kk_id = DB::table("komponenkegiatans")->where("jk_id",$id)->pluck("nama_kegiatan","id");
    return json_encode($kk_id);

}

this is my routes in web.php

Route::group(['prefix'=>'dosen','namespace'=>'Dosen','middleware'=>['auth','dosen'],'as'=>'dosen.'], function(){
Route::get('/dosen/lihatjabatan','AllDosenController@lihat_jabatan')->name('dosen.lihatjabatan');
Route::get('/dosen/lihatkomponenkegiatan','AllDosenController@lihat_kk')->name('dosen.lihatkomponenkegiatan');
Route::get('/dosen/pengajuan-angka-kredit','AllDosenController@view_pengajuan')->name('dosen.pengajuan');
Route::get('/dosen/pengajuan/getKK/{id}','AllDosenController@getKK');
});
1 Answers

hey this case is already solved by change url from the jquery

url: '/dosen/pengajuan/getKK/' +jk,

to this

pengajuan/getKK/' +jk,
Related