我在本地存储中存储了两个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: ...