May I know how I can replace each DOM value that is already stored in an Array?
$(document).ready(function() {
$(".compare-filter-item").click(function() {
var column_value = $(this).attr("data-column");
var selected_data_product = $(this).attr("data-product");
var myarray = [];
$(".compare-all .compare-products [data-product='" selected_data_product "']").each(function(index, value) {
var value = $(this).html();
myarray[index] = value;
});
$(".compare-main .compare-products [data-column='" column_value "']").each(function(index, value) {
// I WANT TO REPLACE EACH OF THE VALUE HERE WITH THE ONES STORED IN ARRAY
});
});
});
CodePudding user response:
Like this
$(function() {
$(".compare-filter-item").on("click",function() {
const column_value = $(this).attr("data-column");
const selected_data_product = $(this).attr("data-product");
const myarray = $(`.compare-all .compare-products [data-product="${selected_data_product}"]`).map(function() {
return $(this).html();
});
$(`.compare-main .compare-products [data-column="${column_value}"]`)
.each(function(i) { $(this).html(myarray[i]) });
});
});
or even this if there is one to one relationship
$(function() {
$(".compare-filter-item").on("click",function() {
const column_value = $(this).attr("data-column");
const selected_data_product = $(this).attr("data-product");
const $myarray = $(`.compare-all .compare-products [data-product="${selected_data_product}"]`);
$(`.compare-main .compare-products [data-column="${column_value}"]`)
.each(function(i) { $(this).html(myarray[i].html()) });
});
});