Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Поиск в JQuery datatables по колонке из выпадающего списка (https://javascript.ru/forum/jquery/78659-poisk-v-jquery-datatables-po-kolonke-iz-vypadayushhego-spiska.html)

Ramundo 15.10.2019 23:51

Поиск в JQuery datatables по колонке из выпадающего списка
 
Привет всем

Помогите пожалуйста, в теге script идет код создания таблицы, данные к ней подгружаются ajax-ом по ссылке, которая содержится в свойстве data-ajax элемента с id="datable-1"

нужно, чтобы в таблице появился select со списком городов, и при выборе определенного города подгружались только строки, где колонка "Город" равна выбранному

@extends('layout')
@section('content')
<section class="content-header">
<h1>'title', 'Список сотрудников'</h1>
</section>
<section class="content">
<div class="box">
<!— /.box-header —>
<div class="box-body">
<table id="datable-1" class="table table-striped table-bordered display tb-datatable"
data-ajax="@section('indexDataRoute', route('publicUser.indexAjax'))> // Сюда подставляется ссылка, по которой таблица подгружает данные
</table>
</div>
</div>
</section>
@endsection
@push('page-js')
<script language="javascript">
   $(document).ready(function () {
       $('#datatable-1').each(function (index, obj) {
           var obj = $(obj);
           var options = {};
   
           options.pageLength = 50;
           options.lengthMenu = [[10, 25, 50, -1], [10, 25, 50, "Все"]];
   
           if (obj.data('ajax')) {
               options.processing = true;
               options.serverSide = true;
               options.ajax = obj.data('ajax');
           }
          options.language = $.fn.datatableLanguageRu();
          options.stateSave = true;
          options.scrollX = true;
   
          options.columns = [
             {
                "data": 'avatar',
                "title": 'Фото',
                "render": function (data, type, row, meta) {
                     var avatar;
                      if (data) {
                         avatar = data;
                      } else {
                         avatar = 'http://placekitten.com/30/30';
                      }
                     return '<img class=" img-circle" src ="' + avatar + '">';
                 }
            },
           {"data": "last_name", "title": "Фамилия"},
           {"data": "name", "title": "Имя"},
           {"data": "middle_name", "title": "Отчество"},
           {"data": "name", "title": "Имя"},
           {"data": "email", "title": "Email"},
           {"data": "phone_number", "title": "Телефон", footer: ["12547", ""]},
           {"data": "city", "title": "Город",},
           {"data": "name", "title": "Имя"},
           {"data": "birth_date", "title": "Дата рождения"},
     ];
   
     var table = obj.DataTable(options);
   
     });
   });
   
</script>

@endpush


Часовой пояс GMT +3, время: 11:58.