简体   繁体   English

如何使用javascript或jquery在web本地storege中存储输入值?

[英]How can I store an input value in web local storege using javascript or jquery?

I have an input like below. 我有一个如下输入。 I want to keep its value after the page is refreshed. 我希望在页面刷新后保持其值。 notice that I have the name attribute, not class or ID. 注意我有name属性,而不是class或ID。

<input type="text" name="name" onkeyup="saveValue(event)"/> 
<input type="text" name="age" onkeyup="saveValue(event)"/> 
<script type="text/javascript">
var nameArr = ["name"];
nameArr.forEach(function(el){
  document.getElementsByName(el)[0].value = getSavedValue(el);  
})

function saveValue(e) {
  var name = e.target.name;
  var val = e.target.value;
  localStorage.setItem(name, val);
}

function getSavedValue(v) {
  if (!localStorage.getItem(v)) {
    return "";
  }
  return localStorage.getItem(v);
}
</script>

it only works for 1 input.I want something that works on unlimited number of inputs. 它只适用于1输入。我想要的东西适用于无限数量的输入。

document.getElementsByName("name") returns an array. document.getElementsByName(“name”)返回一个数组。 if you are sure that there is only one element with the name 'name' then use 如果您确定只有一个名为'name'的元素,请使用

document.getElementsByName("name")[0].value = getSavedValue("name");

Change parameter of saveValue to event : saveValue参数更改为event

<input type="text" name="name" onkeyup="saveValue(event)"/>

Since there are many elements with different names, maintain an array: 由于有许多不同名称的元素,因此维护一个数组:

var nameArr = ["name"]; // Add more elements here
nameArr.forEach(function(el){
  document.getElementsByName(el)[0].value = getSavedValue(el);  
})

Inside saveValue use e.target , instead of e saveValue里面使用e.target而不是e

var name = e.target.name;
var val = e.target.value;

These should get the code working. 这些应该使代码工作。 Here's a working Codepen 这是一个有效的Codepen

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何将令牌值存储到本地javascript文件中 - How can i store token value into my local javascript file 如何将javascript变量值存储到html输入值? - How can I store javascript variable value into html input value? 如何在获得焦点后立即将输入的值存储在 javascript 中? - How can I store the value of an input in javascript as soon as it gains focus? 如何获取javascript值并将其存储到html <input> ? - How can I get javascript value and store to html<input>? 如何使用 JavaScript\\JQuery 使用选择标记的选定选项的值设置隐藏输入标记的值? - How can I set the value of an hidden input tag with the value of the selected option of a select tag using JavaScript\JQuery? 如何使用 JavaScript 或 Jquery 从 td 输入中获取 employee 的值? - How can I get the value of employee from td input using JavaScript or Jquery? 我如何在 jquery 中使用类存储元素值 - How can i store an element value using a class in jquery 如何使用jQuery将json结果放入输入值中? - How can i put json result into an input value using jQuery? 如何使用jQuery从输入数字中读取值? - How can I read value from input number by using jQuery? 如何使用Jquery设置隐藏输入字段的值? - How can I set the value of a hidden input field using Jquery?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM