Изменение HTML содержимого определенного элемента в ответе AJAX в корзине покупок - PullRequest
1 голос
/ 20 июня 2020

Я обновляю цены в корзине покупок с раскрывающимся меню количества select с использованием событий Ajax и onchange. Он работает нормально, но мне было интересно, есть ли альтернатива моему коду, поскольку он кажется непрактичным и слишком длинным.

Это все в функции success

function updateQuantity(form) {
  const code = $(form).attr("id");
  const new_qty = $(form).val();
  $.ajax({
    method: "POST",
    data: {"code": code, "new_qty": new_qty},
    success: function(result) {
//Extract required content from result
      const price1 = $("<div />").append(result).find(".total-td-align").eq(0).text();
      const price2 = $("<div />").append(result).find(".total-td-align").eq(1).text();
      const price3 = $("<div />").append(result).find(".total-td-align").eq(2).text();
      const price4 = $("<div />").append(result).find(".total-td-align").eq(3).text();
// Update total price for individual product with content extracted from result
      $(".total-td-align").eq(0).text(price1); 
      $(".total-td-align").eq(1).text(price2);
      $(".total-td-align").eq(2).text(price3);
      $(".total-td-align").eq(3).text(price4);

      const totalPrice =  $("<div />").append(result).find(".total-amount").text();
      $(".total-amount").text(totalPrice); // Total price of all products

    },
    error: function () {
      alert("Problem in sending reply!")},
  });
} 

У меня всего 4 продукта, но что, если бы у меня было 500?

Скриншот корзины (названия продуктов не отображаются).

Корзина

...