Advertisement
Virajsinh

Select2 With Ajax Data Attributes in jQuery

Apr 12th, 2024 (edited)
1,166
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
jQuery 1.49 KB | Source Code | 0 0
  1.   $('#employee_id').select2({
  2.     placeholder: 'Select Employee Type',
  3.     width: '100%',
  4.     allowClear: true,
  5.     ajax: {
  6.         url: backend_url + '/employee/get_employee',
  7.         dataType: 'json',
  8.         delay: 300,
  9.         type: 'POST',
  10.         data: function(params) {
  11.             return {
  12.                 search: params.term, // search term
  13.                 // _token: $('meta[name="csrf-token"]').attr('content'),
  14.                 // _method: 'POST',
  15.                 emp_type: $('#emp_type').val(),
  16.                 department: $('#department').val(),
  17.                 page: params.current_page,
  18.             }
  19.         },
  20.         processResults: function(data, params) {
  21.             params.current_page = params.current_page || 1;
  22.             var res = data.data.map(function(item) {
  23.                 return {
  24.                     id: item.id,
  25.                     text: item.name,
  26.                     max_advanced: item.max_advanced
  27.                 };
  28.             });
  29.             return {
  30.                 results: res,
  31.                 pagination: {
  32.                     more: (params.current_page * 10) < data.total
  33.                 }
  34.             };
  35.         },
  36.         cache: true
  37.     },
  38.     templateResult: function(data) {
  39.         if (!data.id) {
  40.             return data.text;
  41.         }
  42.         var $result = $('<span>' + data.text + '</span>');
  43.         $result.attr('data-salary', data.max_advanced);
  44.         return $result;
  45.     },
  46.     templateSelection: function(data) {
  47.         if (!data.id) {
  48.             return data.text;
  49.         }
  50.         return data.text;
  51.     },
  52.   }).on('select2:select', function(event) {
  53.     // On Change Event Code Here Selected Data
  54.   });
  55.  
  56.  
  57.   // Get Selected Data Attribute Value Get
  58.   $("#employee_id").select2('data')[0].max_advanced
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement