Postingan lainnya
Kelas Premium!
Belajar Javascript untuk website
Gunakan kupon "mulaijs" untuk diskon 75 ribu!
Filter hasil javascript atau proses membandingkan 2 variabel dari proses javascript
saya mempunyai javascript untuk mereload data yang dipanggil melalui API KEY dan sudah berjalan halaman yang dimaksud untuk mereload data dibuka/diklik (proses reload melalui javascript berjalan, terbukti saat dilakukan inspect atau menekan tombol f12 pada chrome), berikut adalah javascript nya
$(function(){
function appendDataPegawai(){
$.ajax({
url: baseurl+Tampung['ajaxlistdosen'],
type: 'POST',
dataType: 'json',
success: function (results) {
console.log(results);
}
});
}
sebelum hasil dari javascript diatas diplot kan kedalam dropdown list dibawah ini, harus dilakukan proses filter dimana nilai yang diselect pada dropdown list 1 tidak akan tempil lagi didropdown list 2, nilai pada dropdownlist 2 tidak akan muncul lagi pada dropdownlist 3 dan begitu juga seterusnya (saya memiliki 6 dropdown list).
<div class ="form-group">
<label for ="Kota" class="col-sm-2 control-label">Penumpang</label>
<div class ="col-sm-3">
<select id="penumpang_1" name="penumpang_1" class="form-control live2" >
<option value="<?php echo $penumpang_1 ?>"><?php echo $penumpang_1 ?></option>
</select>
</div>
<div class ="col-sm-3">
<select id="penumpang_2" name="penumpang_2" class="form-control live2" >
<option value="<?php echo $penumpang_2 ?>"><?php echo $penumpang_2 ?></option>
</select>
</div>
<div class ="col-sm-3">
<select id="penumpang_3" name="penumpang_3" class="form-control live2" >
<option value="<?php echo $penumpang_3 ?>"><?php echo $penumpang_3 ?></option>
</select>
</div>
</div>
<div class ="form-group">
<label for ="Kota" class="col-sm-2 control-label"></label>
<div class ="col-sm-3">
<select id="penumpang_4" name="penumpang_4" class="form-control live2" >
<option value="<?php echo $penumpang_4 ?>"><?php echo $penumpang_4 ?></option>
</select>
</div>
<div class ="col-sm-3">
<select id="penumpang_5" name="penumpang_5" class="form-control live2" >
<option value="<?php echo $penumpang_5 ?>"><?php echo $penumpang_5 ?></option>
</select>
</div>
<div class ="col-sm-3">
<select id="penumpang_6" name="penumpang_6" class="form-control live2" >
<option value="<?php echo $penumpang_6 ?>"><?php echo $penumpang_6 ?></option>
</select>
</div>
</div>
dari coding dropdownlist diatas terlihat sebelumnya saya menggunakan class live2 yang saya punya didalam javascript tetapi itu tidak saya pakai lagi, penggantinya adalah javascript yang diatas.
seperti yang saya tulisakan diatas sebelumnya, permasalahan saya adalah bagaimana membandingkan 2 variabel atau melakukan filter terhadap hasil proses javascript yang saya cantumkan diatas (coding pertama) sebelum hasilnya diplotkan ke masing-masing select dropdownlist?
berikut adalah clue yang saya dapat tetapi saya belum berhasil mengcoding nya, - Load data ketika klik Lakukan peminjaman - Tampung data tersebut ke variabel tmpDt - Siapkan variabel sementara untuk menampung data yang dipilih. Ex: dtPilihan - Ketika user klik salah satu select2 pegawai, ambil data dari tmpDt - ambil data dari seluruh select2 yang ada untuk mendapatkan data yang sudah dipilih, lalu simpan ke dtPilihan - lalu bandingkan dengan data yang ada di dtPilihan. - Jika salah satu data di tmpDt tersebut ada di dtPilihan, hapus data tersebut dari tmpDt, lalu append seluruh data yang tersisa di tmpDt ke select2 yang diklik - Jika data tidak ada di dtPilihan, append seluruh data di tmpDt ke select2 yang diklik
mohon bantuannya master?? terimakasih banyak sebelumnya
1 Jawaban:
Sebaiknya pada kondisi awal semua dropdown dibuat disable, kecuali dropdown 1. Jika dropdown 1 sudah terpilih, panggil fungsi javascript untuk meremove atribut disable pada dropdown ke-2 agar dropdown ke-2 dapat aktif, begitu juga seterusnya sampai dropdown terakhir. Fungsinya agar user bisa urut memilih dari 1 sampai 6.
Lalu untuk perbandingan antar variabel menurut saya banyak sekali fungsi javascript yang bisa di gunakan salah satunya dari link ini https://www.w3schools.com/jsref/jsref_find.asp.
Tapi itu tergantung dari hasil struktur variabel yang di dapat dari ajax. Dan sebaiknya memang perlu di share juga bentuk result dari ajax-nya
Intinya memang banyak sekali cara dan style code yang bisa digunakan sehingga tidak mungkin kami di forum untuk share semuanya.
Tips dari saya cobalah dulu untuk menulis kode sebisa mungkin untuk membandingkan dua variabel js tadi dengan mencari referensi contoh program sebanyak-banyaknya di internet lalu gunakan satu metode yang pas buat Anda.
jika mentok jangan lupa untuk lampirkan kode lengkap yang sudah Anda buat beserta link referensi yang sudah Anda kunjungi.
Agar kami di forum bisa lebih sepisifik memperbaiki kode yang Anda tulis saja.
Lebih baik lagi untuk source code lengkap lebih baik di lampirkan pada editor online seperti https://jsfiddle.net/ agar bisa dilihat juga simulasi result-nya.
Semoga membantu dan tetap semangat.