Rails загрузочный кликабельный ряд не работает - PullRequest
0 голосов
/ 25 ноября 2018

Я использую кликабельную строку в приложении Rails.Я использовал Bootstrap 4.1.3 для создания таблицы.

Версия Rails: 5.2.1

<tbody>
    <% @animals.each do |animal| %>
      <tr data-link="<%= animal_path(animal) %>">
        <td><%= image_tag(animal.image.url(:small)) %></td>
        <td><%= animal.name %></td>
        <td><%= animal.birthdate %></td>
      </tr>
    <% end %>
  </tbody>

Это мой файл animal.js

$(document).ready(function() {
    $("tr[data-link]").click(function(event){
        console.log("click")
        window.location.href = $(this).data("link")
        event.preventDefault();
   });
})

Но у меня естьпроблема.Когда я открываю страницу в первый раз, все в порядке.Но если я меняю страницу с помощью навигационной панели, я получаю эту ошибку.И мой кликабельный код не работает.Я нигде не звонил text.replace.Эта ошибка вызывает prevel.js Я не использовал prevel.js

error_photo

Error in event handler for (unknown): TypeError: text.replace is not a function

Когда я снова перезагрузил страницувсе в порядке.

Я не нашел решения.В чем проблема?

1 Ответ

0 голосов
/ 26 ноября 2018

Вы используете драгоценный камень turbolinks?если это так, измените ваш скрипт на:

document.addEventListener('turbolinks:load', function() {
  $(document).ready(function() {
    $("tr[data-link]").click(function(event){
        console.log("click")
        window.location.href = $(this).data("link")
        event.preventDefault();
    });
  });
})

Или отключите турболинки, если вы этого не хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...