我已将表单数据存储在本地存储阵列中,我希望将带有ajax的数组发送到php页面,并且还想访问php页面中的数据。
这是我的代码 -
var myvalue=document.getElementById('name').value;
var favorites_str = localStorage.getItem('my_favorites');
if(favorites_str == null) {
favorites = [];
favorites.push({ "name":myvalue});
}
else{
favorites = JSON.parse(favorites_str);
favorites.push({ "name":myvalue});
}
localStorage.setItem('my_favorites',JSON.stringify(favorites));
var data = localStorage.getItem('my_favorites');
if(data == null){
alert("0 favorites");
}else{
favorites = JSON.parse(data);
$.each(favorites, function(index,item){
var my_items=item.name;
})
};
if(navigator.onLine)
{
$.ajax({
url:'http://localhost/offline/nextpage.php',
type:'post',
data:{my_items:my_items},
success:function(data)
{
$('#result').html(data);
}
});
}
感谢。
答案 0 :(得分:0)
假设您使用密钥名称将数据存储在本地存储中:" name"你可以像下面那样得到它并将它发送到ajax调用。
customLoader
答案 1 :(得分:0)
我在你的代码中可以看到的问题是你试图在ajax请求中发送一个变量(my_items
),但变量是在不同的范围内定义的。
请改为尝试:
var myvalue=document.getElementById('name').value;
...
favorites = JSON.parse(data);
var my_items = [];
$.each(favorites, function(index,item){
my_items.push(item.name);
});
if(navigator.onLine) {
$.ajax({
url:'http://localhost/offline/nextpage.php',
type:'post',
data:{my_items:my_items},
success:function(data)
{
$('#result').html(data);
}
});
}
现在可以在ajax请求中访问my_items
对象。