Почему моя разметка не приводит к кликабельным строкам таблицы? - PullRequest
0 голосов
/ 26 марта 2020

Я пытаюсь создать кликабельную строку таблицы, используя Rails 6 и Bootstrap 4 (не уверен, что это проблема Bootstrap). Строки не «кликабельны» с помощью следующего кода:

index.erb. html:

<table class="table table-hover">
    <thead>
    <tr>
        <th scope="col">Name</th>
        <th scope="col">PPU</th>
        <th scope="col">Notes</th>
    </tr>
    </thead>
    <tbody>
        <% @accounts.each do |account| %>
        <tr>
        <% link_to "Show", account_path(account) %>
        <th scope"row"><%= account.name %></th>
        <td><%= account.ppu %></td>
        <td><%= account.notes %></td>
    </tr>
    <% end %>
    </tbody>
</thead>
</div>

Таблица отображается нормально, но щелчок DOM отсутствует.

ОБНОВЛЕНИЕ Я выяснил, как сделать каждый атрибут в строке кликабельным, вот так:

<th scope"row"><%= link_to account.name, account_path(account) %></th>

Теперь я хочу сделать всю строку кликабельной, что требует другого подходит.

1 Ответ

1 голос
/ 26 марта 2020

Метод link_to создает элемент привязки (как вы и предполагали, не обработчик кликов). Где вы разместили это приводит к недействительным HTML. Вы не можете обернуть ячейки таблицы другими элементами, поэтому браузер может удалить их. Трудно сказать, так как мы не видим визуализированную разметку.

Поместите ссылку в каждую ячейку, оборачивая содержимое ячейки. Если вы действительно хотите обработчик щелчков на целую строку, вам понадобится другой подход. В этом случае вам нужно пересмотреть свой вопрос, чтобы лучше объяснить свои намерения.

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