Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
7 профессий по цене одной
07:05:47:06
дн. ч. мин. сек.
10 Июл 2023
2 мин
1043

Создание кликабельной строки таблицы в HTML

Один из распространенных сценариев при разработке веб-сайтов — это создание таблицы, в которой целая строка действует как гиперссылка. Однако,

Один из распространенных сценариев при разработке веб-сайтов — это создание таблицы, в которой целая строка действует как гиперссылка. Однако, если попытаться просто обернуть строку (<tr>) внутри тега ссылки (<a>), это не будет работать.

Пример неработающего кода:

<table>
    <tbody>
        <a href="#">
            <tr>
                <td>Пример</td>
                <td>Текста</td>
            </tr>
        </a>
    </tbody>
</table>

Такой подход не будет работать по двум причинам. Во-первых, это нарушает структуру таблицы в HTML, в которой тег <a> не может быть прямым родителем тега <tr>. Во-вторых, <a> не может быть блочным элементом, а <tr> — это блочный элемент.

Решение этой проблемы состоит в использовании JavaScript или jQuery для прослушивания события клика на строке таблицы и перенаправления на нужную ссылку.

Вот пример реализации на jQuery:

<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>

<table>
    <tbody>
        <tr data-href="https://google.com">
            <td>Пример</td>
            <td>Текста</td>
        </tr>
    </tbody>
</table>

<script>
    $(document).ready(function($) {
        $('*[data-href]').on('click', function() {
            window.location = $(this).data("href");
        });
    });
</script>

В этом примере для строки таблицы используется атрибут data-href, который содержит URL-адрес для перенаправления. С помощью jQuery при клике на строку происходит перенаправление на указанный URL.

Таким образом, можно сделать строку таблицы кликабельной, не нарушая структуру HTML и создавая более интуитивно понятный пользовательский интерфейс.

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей

Добавить комментарий