LocalStorage按钮&列表

时间:2017-01-10 09:49:26

标签: javascript html5 local-storage

我对Javascript很陌生。

我需要一个"添加到收藏夹/从收藏夹删除"功能在几个产品页面上。该函数将保存产品ID并将其放入数组中。

然后,我需要编写一个页面,从LocalStorage中检索所有产品ID,以便通过MYSQL选择显示它们。

我已经涵盖了MYSQL部分,但您可以帮助我使用Javascript吗?

感谢。

2 个答案:

答案 0 :(得分:0)

例如,您可以声明ID数组

var favourites = new Array();

然后在你的代码中你应该添加项目到这个数组

favourites.push('file1_id')
favourites.push('file2_id')

最后将它保存到localstorage(将数组stringify到json,你必须在LocalStorage中存储字符串)

localStorage.setItem('favourites', JSON.stringify(favourites))

在执行SQL查询的页面上,您可以从LocalStorage获取已保存的ID(解析JSON以便获取原始数组)

JSON.parse(localStorage.getItem('favourites'))

答案 1 :(得分:0)

谢谢,这就是我结束的......

var abbeysList = JSON.parse(localStorage.getItem('abbeys'));
var index = abbeysList.indexOf(<?php echo $id; ?>);
var favs = document.getElementById("favs");
document.getElementById("favs").onclick = function() {changeClass()};
if (index>-1) {

favs.className += " active";    
}        

if (index == -1) {

favs.className += " inactive";


}   

function changeClass() {

if(document.getElementById('favs').classList.contains("inactive")) {  

document.getElementById("favs").className = "active";
abbeysList.push(<?php echo $id; ?>);
localStorage.setItem('abbeys', JSON.stringify(abbeysList)); 

}else {  

document.getElementById("favs").className = "inactive";  
abbeysList.splice(index, 1);
localStorage.setItem('abbeys', JSON.stringify(abbeysList));   

}  


}