2016-09-01 78 views
-1

我已经构建了一个页面fiddle,现在我想将输入中输入的值存储到window.localStorage。请帮助我也这样做。将jquery克隆元素存储到window.localStorage

+0

当您点击添加项目按钮时,它看起来像创建了两个新的输入,是否要将所有添加的项目存储到localStorage? – depperm

+0

** code **是的,谢谢 –

+0

请阅读http://stackoverflow.com/help/how-to-ask。告诉我们你已经尝试了什么,哪些不起作用。 '代码' –

回答

0

localStorage只能存储字符串。因为要存储添加到localStorage的所有项目,所以必须从列表中创建一个字符串,并且每次都要获取现有列表,追加并重新串联。里面你addItem点击功能

var names = localStorage.getItem('name'); 
var descriptions = localStorage.getItem('description'); 
if (names == null) { 
    localStorage.setItem('name', JSON.stringify([$('.item:last input[name*="-name"]').val()])); 
    localStorage.setItem('description', JSON.stringify([$('.item:last input[name*="-description"]').val()])); 
} else { 
    names = JSON.parse(names); 
    descriptions = JSON.parse(descriptions); 
    names.push($('.item:last input[name*="-name"]').val()); 
    descriptions.push($('.item:last input[name*="-description"]').val()); 
    localStorage.setItem('name', JSON.stringify(names)); 
    localStorage.setItem('description', JSON.stringify(descriptions)); 
} 

JSON.stringify会让你的名单分成一个字符串,入库,并JSON.parse将从您的字符串从存储中创建一个列表,以便您可以编辑该列表。

+0

谢谢你会尝试 –