[英]storaging of dynamically created checkbox value
因此,在我的一个chrome扩展程序中,我具有类似待办事项列表的功能,而我只是没有设法获得用于存储值的复选框。
我采用一种非常规的方法,其中有一个textbox
,当我按Enter键时, textbox
值在div中创建了我的第一个todolist元素,然后将textbox
值发送到存储所有Todolist元素的textarea
中以\\n
分隔。 然后,当我重新加载页面时,我存储的textarea用换行符分隔值并将它们输出到div中。 可能不是执行此类操作的最佳方法,但到目前为止,它已经对我有效。
无论如何,现在我正在尝试存储动态创建的复选框的复选框值。 因此,我为每个复选框分配了一个i
的ID,其中i
是< textareaLines
。 我似乎无法弄清楚如何动态存储复选框,我知道如何单独存储它们,但对我来说似乎很难。
这是用于setting
同步存储的代码:
var todolines = $('#todoListSave').val().split('\n');
for(var i = 0;i < todolines.length;i++){
console.log(i);
var isTodoListChecked = document.getElementById(i).checked;
chrome.storage.sync.set({
todoList: isTodoListChecked
});
console.log(isTodoListChecked);
}
这是getting
同步存储的代码:
chrome.storage.sync.get('todoList', function (result) {
todoList = result.todoList;
console.log(todoList);
});
有任何想法吗? 也许我只是真的想得太过分,但我似乎无法弄清楚。
谢谢。
我的猜测是,由于该复选框是动态生成的,因此该行
var isTodoListChecked = document.getElementById(i).checked;
不管用。 您将需要调用jquery .on()函数的复选框值。
$(document).on('checked', '#'+i, function(e){
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.