JQuery заменяет несколько текстов

Мне нужен совет по замене текста с помощью jQuery. У меня есть шаблон, который выглядит так, и он строит тележку для покупок:

{foreach from=$cart.products item=product}
                    <div class = "product">
                        <span class = "product-image"><img src = "{$product.cover.small.url}"></span>
                        <div class = "product-details">
                            <h2 class = "name-header">{$product.name}</h2>
                            <div class = "product-quantity-details">
                                <span class = "quantity">{$product.quantity}</span>

Это даст мне контейнер для каждого продукта, есть еще элементы после и до. У меня есть кнопки, с помощью которых можно увеличивать или уменьшать количество (.product-quantity-details .quantity). Я использую jQuery для отправки запроса AJAX:

document.getElementById('link1').addEventListener('click', function(ev){
    ev.preventDefault();
    var html ;
        $.ajax({
        url: this.href,
        type: "GET",
        dataType: "html",
          success: function(data) {
              html = $(data).find('.product-quantity-details .quantity').html();
              console.info(html); 
              $(".product-quantity-details .quantity").text(html);
          }
    });
});

Сервер возвращает HTML-представление всей корзины (включая другие товары, не показанные в приведенном выше коде). Я не могу просто заменить контейнер ответом, потому что есть загруженные изображения, и они не отображаются, если я использую jQuery.replaceWith(). Так что в настоящее время я могу обновить только одно количество. Есть ли способ обновить каждую величину, поэтому получить массив значений из $(data).find('.product-quantity-details .quantity').html();, где я могу выполнить итерацию и заменить существующий текст в HTML?
Или есть лучший способ попасть в тюрьму (обновить любое количество количеств в моем HTML). Я думал просто использовать html = $(data).find('.product-quantity-details .quantity');, есть ли гарантия, что этот массив имеет порядок элементов HTML?

"изображения загружены, и они не отображаются, если я использую jQuery.replaceWith ()" ... почему бы и нет? Ссылки на изображения, возвращаемые вызовом ajax, неверны или что-то в этом роде?

ADyson 02.10.2018 12:12

Нет, если я заменю их и не перезагружу страницу, они не будут доставлены?

ItFreak 02.10.2018 12:12

ну почему он не возвращает правильный HTML с правильными URL-адресами для этих изображений? Это была бы проблема, которую я бы исследовал в этом сценарии. Похоже, вы пытаетесь создать обходной путь вместо решения основной проблемы.

ADyson 02.10.2018 12:17

Нет, если я просто заменяю HTML, он работает правильно, изображения не загружаются, если я заменяю только HTML, или я здесь ошибаюсь?

ItFreak 02.10.2018 12:21

«если я просто заменяю HTML, все работает правильно, изображения не загружаются, если я заменяю только HTML» .... извините, это не имеет смысла. Кажется, вы говорите о «замене HTML» в обеих ситуациях. Какая разница? Я не уверен, что вы пытаетесь сказать.

ADyson 02.10.2018 12:22
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
5
52
1

Ответы 1

просто использовать, я не встречал ни одного случая, когда порядок элементов html не поддерживался. Также у вас есть свойство index, которое даст номер позиции.

html = $(data).find('.product-quantity-details .quantity');

Другие вопросы по теме