Bagaimana jika Anda ingin mengirimkan parameter tambahan (yang dinamik) ke jQuery tokenInput ?

Misal, Anda memiliki  form seperti berikut, dimana salah satu fieldnya, menggunakan jQuery tokenInput, dalam hal ini adalah field Kode Soal. 


Ketika menggunakan inisialisasi default jQuery tokenInput seperti berikut : 

<?php $pre_populate = $sf_data->getRaw('pre_populate');?>
<script type="text/javascript">
jQuery(function(){
$("#kode_soal").tokenInput("<?php echo url_for("@pengaturan_kelompok_soal?act=get_kode_soal");?>",{
theme: "facebook",
<?php if($pre_populate) {?>
prePopulate: <?php echo $pre_populate ;?>
<?php } ?>
});
}) ;
</script>


Maka yang terikirim hanya parameter q, yaitu paramater yang kita ketikkan pada field Kode Soal. Bagaimana caranya kalau kita ingin mengirimkan parameter Jenis Soal juga ? Jawabannya ada di [1].

Maka script diatas akan menjadi seperti berikut : 

<?php $pre_populate = $sf_data->getRaw('pre_populate');?>
<script type="text/javascript">
jQuery(function(){
$("#kode_soal").tokenInput(lookupKodeSoal,{
theme: "facebook",
<?php if($pre_populate) {?>
prePopulate: <?php echo $pre_populate ;?>
<?php } ?>
});
}) ;

function lookupKodeSoal() {
var jenis_soal = $("#jenis_soal").val() ; 
return "<?php echo url_for("@pengaturan_kelompok_soal");?>?act=get_kode_soal&jenis_soal="+jenis_soal ;
}
</script>

Berikut adalah output dari firebug-nya : 



Referensi

  1. Allow functions as URL, https://github.com/loopj/jquery-tokeninput/pull/77

Comments