如何删除localStorage中的连接数据

时间:2013-09-15 13:16:22

标签: javascript json html5 listbox local-storage

我正在使用localStorage存储一些数据,所有数据都以\ n分隔连接。我想删除localStorage中的特定数据,我正在使用列表框来显示所有数据。

示例{“rowdata”:“data1 \ ndata2 \ ndata3”} //三个数据存储在localStorage中,localStorage中rowdata的键是storedata,rowdata是三个数据连接的storedata的值。

是否有一种简单的方法可以删除所选数据,例如我想删除data3。我正在使用谷歌浏览器浏览器..

显示代码:

function populate(){
for(i=0; i<rowdata.length; i++){
var select = document.getElementById("test"); // id of the listbox
var splitRow = rowdata.split("\n");
var row = splitRow[i];
if(row != undefined)
select.options[select.options.length] = new Option(row);
}
}

删除代码:

function removeSelectedItem(){
var htmlSelect=document.getElementById('test'); // id of the listbox
if(htmlSelect.options.length == 0)
{
alert('You have already removed all list items');
return false;
{
var optionToRemove = htmlSelect.options.selectedIndex;
htmlSelect.remove(optionToRemove);
if(htmlSelect.options.length > 0)
{
htmlSelect.options[0].selected=true;
{
alert('The selected data has been removed successfully');
return true;
}

...谢谢

1 个答案:

答案 0 :(得分:0)

不确定我是否清楚地理解了这个问题,但是如果你只需要更新状态if rowdata变量,那么在从RemoveSelectedItem中选择select之前尝试放下代码(man,用小写开始函数名! ):

rowdata = ("\n" + rowdata + "\n").replace("\n" + htmlSelect.options[htmlSelect.options.selectedIndex].innerHTML + "\n", "").trim()