Как передавать данные foreach в ajax

Я сохранил два 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;?>";
}
});
});

0

Решение

Используйте 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: ...
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector