保存html表单字段状态
Save html form field state
今天我在一个项目中发现了一些有趣的东西。我有一个搜索框,里面有几个字段(例如:车牌、购买日期、州),其中一些字段有一个操作员字段。(例如:>,<,=)在我发布搜索并返回结果后,说我想更改我的一个运算符,但总是更改到它的第一个元素。我能做些什么来"保存"字段的状态吗?
我可以用会话来做,但这是一个相当大的形式,所以会很难看。
谢谢你的回答!
使用localStorage
:的小片段
- 我已经安排了5秒的时间来备份表单上的所有内容
- 加载页面后,从
localStorage
加载内容
window.onload = function () {
if (typeof(Storage) !== "undefined") {
if (typeof localStorage["name"] !== "undefined") {
document.getElementById("name").value = localStorage["name"] ? localStorage["name"] : "";
document.getElementById("pass").value = localStorage["pass"] ? localStorage["pass"] : "";
}
// Code for localStorage/sessionStorage.
setInterval(function () {
document.getElementById("saving").innerHTML = 'Saving...';
setTimeout(function () {
document.getElementById("saving").innerHTML = '';
}, 500);
localStorage.setItem("name", document.getElementById("name").value);
localStorage.setItem("pass", document.getElementById("pass").value);
}, 5000);
}
};
strong {display: inline-block; width: 50px;}
<form action="">
<strong>Name:</strong> <input type="text" name="name" id="name" /><br>
<strong>Pass:</strong> <input type="password" name="password" id="pass" /><br>
<span id="saving"></span>
</form>
注意:localStorage
是代码段中的沙盒功能。所以在这里不起作用。报到JSBin:http://output.jsbin.com/bubukunoke
我最后用会话解决了这个问题。
当我发布表单时,我将所有内容保存到一个会话中,并在视图中检查它是否存在,如果存在,我将其设置为字段值。
相关文章:
- 基于javascript中的状态字段对动态行数据进行动态着色
- 对“类型”和“状态”字段的更新会中断WSAPI中的模型检索
- 如何创建具有空白选项和未筛选状态的动态选择字段
- 将状态设置为“输入名称”字段的值时遇到问题
- 保持提交按钮处于禁用状态,直到填充动态创建的必填字段
- 如何更改输入字段值,使其不会在每次更改时贯穿整个 Redux 状态更新周期
- HTML 表单框字段不会保持单击状态
- 检测文本溢出:省略号在输入字段上是否处于活动状态
- 需要显示其他字段的实时状态
- 如何基于布尔字段动态显示Rails字段's状态
- JQuery验证禁用按钮,直到所有字段都处于活动状态,但它不应该在每次按键时都显示错误
- 处理jquery.ajax结果,并显示它们旁边各个字段的验证状态
- 将状态更新到输入字段
- AngularJS将状态参数传递给data字段
- AngularJS获取单个字段的原始状态
- js复选框用于控制输入字段的启用/禁用状态
- AngularJS验证更新另一个输入字段的错误状态
- 根据组合框中不同的选定值绑定字段状态(禁用或隐藏)
- 捕捉输入字段验证状态的变化
- 如何在ui-select处于禁用状态时清除字段