Я сохранил два JSON
массивы в локальном хранилище, т.е.
viewbody=>json data1
, viewcollar=>json data2
, Я собираю эти массивы в foreach
цикл из локального хранилища с атрибутом имени данных динамически. Но не могу пройти два arrays
данные для php
ajax
, Пожалуйста, помогите мне, кто-нибудь.
Ниже мой код,
$(document).on('click','.startDesignbtn', function() {
var product_id = $(this).data("id");
$(".getoption").each(function(){
var option_name = $(".getoption").data("name");
// alert(option_name);
var views = localStorage.getItem("view"+option_name);
});
$.ajax({
url: 'index.php?route=product/design/designMultiImage',
type: 'post',
//dataType: 'text',
data:{
'product_id': product_id,
'views' : views,
},
success: function(data) {
alert(data);return false;
var intValArray = data.split(',');
var count = 0;
$.each(intValArray,function(i){
localStorage.setItem("view_"+count,intValArray[i]);
count++;
});
localStorage.setItem('design-image',data);
localStorage.setItem('parent-id',product_id);
// var custom_link = data;
window.location = "<?php echo $customize_link;?>";
}
});
});
Используйте array.push () для добавления значений в массив. Кроме того, вам нужно определить массив вне каждого цикла, иначе вы будете сбрасывать его каждый раз. Также внутри цикла используйте $ (this) вместо нацеливания на элемент по классу. Исправлена функция щелчка ниже:
$(document).on('click','.startDesignbtn', function() {
var product_id = $(this).data("id");
var views = [];
$(".getoption").each(function(){
var option_name = $(this).data("name");
// alert(option_name);views.push("view"+option_name);});
$.ajax({
url: 'index.php?route=product/design/designMultiImage',
type: 'post',
//dataType: 'text',
data:{
'product_id': product_id,
'views' : views,
},
success: ...
Других решений пока нет …