首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不采取行动的工作形式

不采取行动的工作形式
EN

Stack Overflow用户
提问于 2014-05-27 08:58:46
回答 1查看 3.5K关注 0票数 1

我试图在没有行动的情况下做html表单。它必须:

1)将输入数据记为正常格式。

2)不重新加载页面

我试过:

代码语言:javascript
复制
<form action="javascript:void(0);" id="simple-form">

但继续

代码语言:javascript
复制
$('#simple-form').submit();

表单不记得输入数据。范式

代码语言:javascript
复制
<form action="#" id="simple-form">

重新加载页面,但也记住输入数据。

确实存在另一种不使用javascript?的表单来记忆数据的方法。

更新#1:

代码语言:javascript
复制
event.preventDefault(); // onsubmit event prevert

不起作用,因为它不仅防止了页面的重新加载,而且还防止了数据的保存(自动完成)。

EN

回答 1

Stack Overflow用户

发布于 2014-05-27 09:02:19

用javascript

代码语言:javascript
复制
var form = document.getElementById("simple-form")
form.onsubmit = function (event) { event.preventDefault() }

if(localStorage){
    var textfield = document.getElementById("yourTextfield");
    var data = localStorage.getItem("yourTextfield");
    if(data){
       textfield.value = JSON.parse(data);
    }
    textfield.onkeydown = function(){
         localStorage.setItem("yourTextfield",JSON.stringify(textfield.value));
   }
}

使用历史对象的替代解决方案

代码语言:javascript
复制
var data = history.state.textfieldName;
if(data){
    textfield.value = data;
}
textfield.onkeydown = function(){
    history.state.textfieldName = textfield.value;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23885100

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档