我只是想知道如何搜索存储在本地存储中的特定值。
我尝试使用警告显示搜索值。
function search(){
var sea = document.getElementById('searchbox').value;
localStorage.getItem('sea',value);
var value = $('#MyTable').find('tr#key_'+sea).children('td.two').text();
alert(value);
}
但是,如果我输入的值未存储在本地存储中,则不会显示为空。
如何显示本地存储中搜索值的所有匹配值?
答案 0 :(得分:1)
localStorage.getItem()
的语法不正确。该方法只需要一个参数。正确的语法是:
var aValue = storage.getItem(keyName);
其中keyName
是一个字符串,其中包含要检索其值的键的名称。该方法返回键的值。因此,您应该存储返回的值。如果密钥不存在,则返回null。
我认为你的代码应该是
var sea = localStorage.getItem(value);
答案 1 :(得分:0)
您可以通过指定要搜索的密钥从localStorage
检索数据。你的语法错了。
正确的方法是:
LocalStorage.getItem(*key*)
您使用的是.setItem()
语法
这是:
LocalStorage.setItem(*key*, *value*)
答案 2 :(得分:0)
您的代码逻辑应如下所示:
localStorage
中搜索上面带有上述名称的密钥代码:
function search() {
// Get the user's input from the page
var searchQuery = document.getElementById('searchbox').value;
// Get the item from LocalStorage
var localStorageItem = localStorage.getItem(searchQuery);
// Do your DOM manipulation magic
var elementValue = $('#MyTable')
.find('tr#key_' + localStorageItem)
.children('td.two')
.text();
console.log(elementValue);
}
请注意,上述代码存在问题,因为LocalStorage
中的值不存在。然后,localStorageItem
将成为null
,您的DOM查询.find('tr#key_' + localStorageItem)
将失败。
您可能希望将DOM操作包装在if语句中,在该语句中检查localStorageItem !== null
。