gotopa

Catatan select2.js

Jan 11th, 2016
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.10 KB | None | 0 0
  1. /*
  2. * Ini Hanya Contoh penggunaan Javascript select2 load data
  3. * Framework Codeigniter
  4. */
  5.  
  6. <!-- load css dan js -->
  7. <link href="<?php echo base_url('assets/plugins/select2/select2.min.css');?>" rel="stylesheet" type="text/css" />
  8. <script src="<?php echo base_url('assets/plugins/select2/select2.min.js');?>"></script>
  9.  
  10. // Pemakaian pada Javascript
  11. var $select = $(".f_prov_id");
  12. $select.select2({
  13. minimumInputLength: 0,
  14. ajax: {
  15. url : "<?php echo site_url('md_province/fnprovinceComboData');?>",
  16. dataType : 'json',
  17. delay : 250,
  18. processResults : function(data,params) {
  19. return {
  20. results: data.result,
  21. }
  22. },
  23. cache: true
  24. },
  25. });
  26.  
  27. // Pemakaian pada Javascript saat update
  28. var $option = $('<option selected>Loading...</option>');
  29. $select.append($option).trigger('change');
  30.  
  31. $.ajax({
  32. type: 'GET',
  33. url: '<?php echo site_url('md_province/fnprovinceComboData');?>?id='+data.f_prov_id,
  34. dataType: 'json',
  35. }).then(function (dt) {
  36. msg = dt.result;
  37. // Here we should have the data object
  38. $option.text(msg[0].text).val(msg[0].id); // update the text that is displayed (and maybe even the value)
  39. $option.removeData(); // remove any caching data that might be associated
  40. $select.val(msg[0].id).trigger('change'); // notify JavaScript components of possible changes
  41. });
  42.  
  43. // Pada Controller
  44. public function fnprovinceComboData($pId)
  45. {
  46. $json['result'] = $this->mo_province->fnprovinceComboData();
  47. echo json_encode($json);
  48. }
  49.  
  50. // Pada Model
  51. public function fnprovinceComboData() {
  52. if($this->input->get('term')) $this->db->like('f_provinsi_nama',$this->input->get('term')); // pencarian
  53. if($this->input->get('id')) $this->db->like('f_provinsi_id',$this->input->get('id')); // saat pencarian update
  54. $this->db->limit('10');
  55. $vResult = $this->db->get($this->table)->result();
  56. $vDataJson = array();
  57. foreach($vResult as $vRow):
  58. $list['id'] = $vRow->f_provinsi_id;
  59. $list['text'] = $vRow->f_provinsi_nama;
  60. array_push($vDataJson,$list);
  61. endforeach;
  62. return $vDataJson;
  63. }
Advertisement
Add Comment
Please, Sign In to add comment