TypeError: нельзя использовать оператор «in» для поиска «length» в «selected_at» - PullRequest
0 голосов
/ 25 мая 2018

Я пытаюсь заполнить свою таблицу, используя Datatables и jquery, однако я получаю сообщение об ошибке

TypeError: cannot use 'in' operator to search for 'length' in 'created_at'

в моей консоли.

Моя таблица:

$(function () {
   $('.table-grid').DataTable({
       serverSide: true,
       processing: true,
       ajax: $('.table-grid').data('url'),
       columns: [
          'created_at',
          'username',
          'package_amount',
          'direct_id',
          'register_by',
          'action',
       ],
       responsive: true,
       searchDelay: 1000,
      });
    });
<table class="table table-full table-full-small dt-responsive display nowrap table-grid" cellspacing="0" width="100%" role="grid" data-url="{{ route('admin.member.getList') }}">
                        <thead>
                        <tr>
                            <th data-id="created_at">Join Date</th>
                            <th data-id="username">Username</th>
                            <th data-id="package_amount">Package</th>
                            <th data-id="direct_id" data-orderable="false" data-searchable="false">Direct ID</th>
                            <th data-id="register_by">Registered By</th>
                            <th data-id="action" data-orderable="false" data-searchable="false">
                            Action
                            </th>
                        </tr>
                        </thead>
                <tbody>
                </tbody>
              </table>

Я использую JQuery 3.2.1 Пожалуйста, помогите!

Данные, вводимые в URL, получены из функции ниже

public function findAll (DataTables $dataTable, $table=false) {
    if (!$table) return $this->model->all();
    else {
        return $dataTable->eloquent($this->model->query())
            ->addColumn('action', function ($model) {
                return view('admin.member.action')->with('model', $model);
            })
            ->editColumn('direct', function ($model) {
                if ($direct = $model->direct()) return $direct->username;
                else return 'Member not found.';
            })
            ->editColumn('package_amount', function ($model) {
                return number_format($model->package_amount, 2);
            })
            ->make(true);
    }

Ответы [ 2 ]

0 голосов
/ 07 января 2019

Возникла проблема при обновлении

Uncaught TypeError: Невозможно использовать оператор «in» для поиска «length» в

Обновлен до последней версии, доступной для данных (при записи), например: 1.10.19.

Исправлено данными: 1.10.19 с рельсами jquery (4.3.3)

0 голосов
/ 25 мая 2018

Это помогло.Спасибо @ kaddath

$('.table-grid').DataTable({
        serverSide: true,
        processing: true,
        ajax: { type:"GET", url: $('.table-grid').data('url') },
        columns: [
          { "data": "created_at" },
          { "data":"username" },
          { "data":"package_amount" },
          { "data":"direct_id" },
          { "data":"register_by" },
          { "data":"action" }
        ],
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...