【发布时间】:2019-05-09 01:08:33
【问题描述】:
我的应用中有一个功能,其中用户选择关键字,这些关键字一旦被选择就会显示在文本字段中。如果页面重新加载,我希望保留关键字,同时当用户选择更多关键字时,它只会与初始关键字一起显示。
我已经检查并尝试了这个答案Append data to localStorage object,但我收到“keylocal.push is not a function”错误。
if(localStorage.getItem('keywords') == null){
$('.words').on('click', function(e){
e.preventDefault();
keywords.push( $(this).data('word-name') );
document.getElementById('display').value = keywords
localStorage.setItem('keywords', keywords)
return keywords
console.log(keywords)
});
}
else{
var keylocal = localStorage.getItem('keywords')
document.getElementById('display').value = keylocal
$('.words').on('click', function(e){
keylocal.push( $(this).data('word-name') );
localStorage.setItem('keywords', keylocal)
var keyresult = localStorage.getItem('keywords')
console.log(keyresult)
document.getElementById('display').value = localStorage.getItem('keyresult')
return keywords
});
}
我希望能够通过onclick显示之前选择的关键字和新的关键字。但是,它要么只显示新关键字,要么我得到 .push is not a function 错误
【问题讨论】:
标签: javascript arrays local-storage