Задать вопрос
XXI_BEK
@XXI_BEK
Студент

Как на jQuery перехватить (провести) get-запрос по динамическому множеству ссылок?

Итак, имеется динамически формируемый набор ссылок, на них настроен контроллер с принимаемым параметром (id), который выполняет определенные действия и возвращает результат. А нужно чтобы jQuery без перезагрузки подгрузил данные по ссылке в поле для текста. С одной ссылкой все ясно, а вот с множеством как?
  • Вопрос задан
  • 84 просмотра
Подписаться Простой 2 комментария
Решения вопроса 1
XXI_BEK
@XXI_BEK Автор вопроса
Студент
function renderSearchTable(item) {
            return `<tr>
                                <td><button type="button" class="btn btn-link" onclick="renderArticle(${item.id})">${item.title}</button></td>
                                <td>${item.pivot.quantity}</td>

                    </tr>`
        }

        function renderArticle(id) {
            $.ajax( {
                url: '/wiki/article/' + id,
                method: 'GET',
                data: {
                    id: id
                },
                success:function(response) {
                    console.log(response);

                    if(response) {
                        $("#articleTitle").val(response.title);
                        $("#articleLink").val(response.link)
                        $("#articleText").html(response.content);
                    }
                },
                error:function (response) {
                    console.log(response + "error");
                }
            });

        }

По сути использование button вместо href
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
zkrvndm
@zkrvndm
Архитектор решений
Что именно вызывает у вас затруднения? Если умейте грузить данные по одной ссылке, то какая принципиальная разница обойти все ссылки при помощи цикла и сделать все тоже самое?

У jQuery для обхода массивов есть встроенный метод jQuery.each, а для обработки результатов можно использовать jQuery.Deferred, который полностью обратно совместим с Promise.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы