为了账号安全,请及时绑定邮箱和手机立即绑定

想问下在Chrome扩展中使用Chrome提供的存储API可以实现表单存储吗?

想问下在Chrome扩展中使用Chrome提供的存储API可以实现表单存储吗?

千万里不及你 2019-05-24 16:12:21
大家,想要对用户输入的表单数据在浏览器端存储,用什么方法比较好啊?安全问题暂不考虑,没有任何敏感数据的。尝试了使用ChromelocalstorageAPI,但是没有成功。再详细说一下要实现的功能:在扩展中有2-3个输入框,对于用户多次在这些输入框中输入的不同的文本内容进行存储并且显示在扩展中。可能说的不太准确,我再详细说一下我的需求:有3个输入框,这三个输入框为一组数据,用户提交一次后会将数据保存在本地并且实时显示在浏览器中,用户第二次输入数据并提交的时候是添加一组数据而不是更新上一组数据。谢谢关注者。。。
查看完整描述

2 回答

?
慕后森

TA贡献1802条经验 获得超5个赞

直接给你段代码好了,自己看看改改
varstrKey="content_{{$question->id}}";
varstorage=window.localStorage;
vardocAnswer=document.getElementById("answer_editor_content");
if(docAnswer){
//再次打开页面时尝试赋值
if(docAnswer.value==""&&storage.getItem(strKey)!=null){
$("#answer_editor_content").val(storage.getItem(strKey));
$("#answer_editor").html(storage.getItem(strKey));
}
//定时保存
setInterval("cacheContent()",1000);
}
functioncacheContent(){
varstrValue=document.getElementById("answer_editor_content").value;
if(storage&&strValue!=''){
storage.setItem(strKey,strValue);
}
}
                            
查看完整回答
反对 回复 2019-05-24
?
隔江千里

TA贡献1906条经验 获得超10个赞

如果是写chrome扩展的话,可以使用storage这个api,会自动同步云端(如果你连接了谷歌服务器),否则和localstorage是一样的,可直接存储数组或对象。具体使用
chrome.storage.sync.set({'key':vlaue},function(){
console.log('savedsuccess');
});
value可以为字符串,数组,对象,使用这个api需要在manifest.json中添加"storage"这个权限
如果是使用普通的sessionStorage或localStorage,存储复杂对象,可以把对象或数组用JSON.stringfy转成字符串来存储,使用的时候用JSON.parse来解析成原来的格式。希望能对你有所帮助。
                            
查看完整回答
反对 回复 2019-05-24
  • 2 回答
  • 0 关注
  • 646 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信