javascript - 在按钮按下时动态添加表单元素,这些元素在页面重新加载后保留

标签 javascript php html forms

我正在用 PHP 创建一个多页表单。

我正在使用 JavaScript 来允许用户创建新的文本字段。

function add() {
    document.getElementById('wrapper').innerHTML += '<input type="text"><br><br>';
}

由于它是一个多页表单,用户可以选择返回到之前的页面。问题是,一旦页面重新加载,已添加的额外文本字段就会消失。重新加载页面后,我将如何将它们保留在页面上?我是否需要创建一个 cookie 来存储添加的表单元素?

最佳答案

我要做的是将它们存储在 sessionStorage 中,然后在页面加载时加载它们。

function add() {
    document.getElementById('wrapper').innerHTML += '<input type="text"><br><br>';
    sessionStorage.inputBoxes = document.getElementById('wrapper').innerHTML;
}

window.load = function() {
   if (sessionStorage.inputBoxes) {
      document.getElementById('wrapper').innerHTML = sessionStorage.inputBoxes;
   }
};

我确实写了一个插件http://github.com/sebringj/jquery.dumbformstate保持表单状态,不是在动态控件方面,而是在使用 session 和本地存储保持表单输入状态方面。

关于javascript - 在按钮按下时动态添加表单元素,这些元素在页面重新加载后保留,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20181640/

相关文章:

javascript - 可以从 Web 浏览器加载 Socket.IO(express)服务器吗?

javascript - 我如何测量 div 中的光标位置..?

javascript - Django 脆皮表单 - 使用单选按钮隐藏/显示其他字段

javascript - 网站的特定 slider 库

javascript - 使用 javascript 计算多个按钮的点击次数

php - 从 Symfony 表单中获取请求对象的最佳方法?

javascript - 功能不适用于网络浏览器中的模态

html - 如果使用 CSS 窗口宽度太小,则显示 HTML 文本

html - 边框左右两侧有多余的空间,我该如何解决?

javascript - 将文本区域的值应用于变量时出现类型错误