2017-01-10 5 views
0

Я использую таблицу данных железа, загруженную данными JSON от iron-ajax. Я разрешаю пользователю выбирать несколько строк и нажать «удалить». Список отправляется на сервер и удаляется из базы данных.Refresh iron-data-table

<iron-ajax url="/data/ban" last-response="{{users}}" auto></iron-ajax> 
     <iron-data-table selection-enabled multi-selection id="banTable" 
     items="[[users]]"> 


handleTap: function() { 
     var table = this.$$('#banTable'); 
     $.ajax({ 
      type: "POST", 
      url: "/ban/remove?_csrf=" + this.token, 
      data: JSON.stringify(table.selectedItems), 
      contentType: "application/json; charset=utf-8", 
      dataType: "json", 
      success: function (msg) { 
       if (msg) { 
        table.clearCache(); 
       } else { 
        alert("Cannot update list !"); 
       } 
      } 
     }); 

Однако на переднем конце таблица не обновляется. Я попробовал table.clearCache, но это не поможет.

Любая идея о том, как действовать?

+0

Try не смешивать jQuery с Polymer. Используйте запрос «iron-ajax», чтобы выполнить запрос. Кроме того, в настоящее время вы просто делаете запрос на удаление и фактически не удаляете строку из массива 'users' ... – alesc

+0

Затем вы будете использовать« последний-ответ »этого нового iron-ajax с тем же связыванием (' { {users}} ') как первый запрос iron-ajax для обновления таблицы? – user2447161

+0

Это зависит от того, что возвращает запрос. Если он возвращает новый список (без удаленной записи), то да, вы можете привязать 'last-response' к' {{users}} ', и затем будет обновлена ​​таблица« iron-data-table ». Если он только возвращает сообщение об успешном завершении, вы можете либо удалить запись из массива 'users', либо сделать новый запрос с вашим существующим« iron-ajax ». – alesc

ответ

1

Добавьте идентификатор в утюг-Аякса и в функции успеха вызвать его функцию GenerateRequest().:.

Это $ myAjax.generateRequest()

Это referesh пользователи массив

+0

спасибо, я даю ему попробовать прямо сейчас – user2447161

+0

Он работает, спасибо! Однако этот. $. MyAjax не может быть разрешен. Мне пришлось использовать это. $$ ("# myAjax"). Это потому, что тег iron-ajax находится внутри