有没有办法在下面的代码中使用localstorage?只是为了确保您输入的文本即使在刷新后也会保留在您发送的框中。
查询:
$(document).ready(function() {
var $input1 = $('.textField');
$(".sendTo").on("click", function() {
var box = $(this).data("sendto");
$(`[data-box='${box}']`).append($input1.val());
$input1.val("");
});
});
网页:
<input class="textField" type="text">
<div class="sendTo" data-sendto='box1'>send to box 1</div>
<div class="sendTo" data-sendto='box2'>send to box 2</div>
<div data-box="box1">box 1</div>
<div data-box="box2">box 2</div>
我有麻烦在哪里放置localStorage.setItem
和localStorage.getItem
2条答案
按热度按时间roejwanj1#
你可以像这样实现它(更多解释请参见注解):
如果在输入字段中添加此事件注册,您还可以保存每次按键的数据:
3okqufwl2#
要在localstorage.setItem / getItem中使用这段代码,你只需要知道要读取的键。它已经传入了box变量:
因此,您可以将其用作:
要使用
getItem
进行检索,您可以循环每个具有属性[data-box]
的输出,获取.data("box")
并将其用作键:更新代码:
注意:stackoverflow代码段不允许本地存储,所以你可以使用这个小提琴来看看它的运行情况:https://jsfiddle.net/35ugqf6j/
注意:这将清除输出中的默认“box 1”文本-如果您不希望在第一次运行时检查
null
,则可以检查它。注意:你需要一个方法来清除output/localstorage,否则它会变得越来越大。