Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery input replaceWith()在重新加载时选择并记住所选内容_Javascript_Jquery - Fatal编程技术网

Javascript jQuery input replaceWith()在重新加载时选择并记住所选内容

Javascript jQuery input replaceWith()在重新加载时选择并记住所选内容,javascript,jquery,Javascript,Jquery,我有一个动态输入列表字段,可以按+按钮生成所需的行数,也可以按-按钮删除 我想用select预定义值替换输入字段,所以我用jQuery replaceWith函数完成了这一点。 但我的问题是,如何在上一步表单中重新加载页面时保持选中的值 这是我的代码,我已经复制了bin 谢谢 您可以使用本地存储,例如: window.addEventListener("beforeunload", function(e){ sessionStorage.setItem( "list1", $("list1

我有一个动态输入列表字段,可以按+按钮生成所需的行数,也可以按-按钮删除 我想用select预定义值替换输入字段,所以我用jQuery replaceWith函数完成了这一点。 但我的问题是,如何在上一步表单中重新加载页面时保持选中的值

这是我的代码,我已经复制了bin


谢谢

您可以使用本地存储,例如:

window.addEventListener("beforeunload", function(e){
   sessionStorage.setItem( "list1", $("list1").val() );
}, false);

然后加载恢复

您是否尝试过使用cookie或本地存储?这些可能是您可以保存希望持久化的用户数据的地方

或者,如果您有一个允许Cookie的用户,您可以始终使用服务器端资源,例如会话或通过CSRF*键控的DB条目

*我的多页表单始终位于一组表单标记中的一个实际页面上。每个“页面”只是一个通过CSS显示的部分——如果javascript关闭,它仍然可以工作,它只是一个长表单。因此,从表格的“页面”到“页面”,我的CSRF保持不变。此外,由于用户从不离开,“页面”导航不会“杀死”表单中输入的任何数据

我最后做的是运行一些JavaScript,在DOM加载表单元素并根据元素及其属性/属性操作表单元素后发出REST请求,这使得页面元素与我存储的内容匹配。在此之前,我曾使用PHP将服务器端的PHP变量回显到运行客户端的JavaScript中,但该任务实际上更适合于前端代码。它并不漂亮,但它可以用于预设下拉列表

我偶然发现了其他人的代表性示例,该示例介绍了我如何首先使用PHP/JavaScript操作表单元素:在该示例中,您可以看到如何将存储的信息放入JavaScript中。这让我感到混乱和不专业,所以我现在做的事情不同了。现在,我在PHP中通过在选项标记中设置适当的“selected”属性来完成这一切——显然,您需要通过文本值、复选框复选框或textarea元素的节点文本为其他元素编辑它。对于AJAX请求,所选选项将在返回数据中显示,并以标准化的方式进行处理,即使这只是我自己的标准


为什么我告诉你这个服务器端的东西可能是无关的——因为你可能想考虑从另一个答案中存储你对……/P>< P>有很多控制的正在进行的数据服务器侧。我的多页表单始终位于一组表单标记中的一个实际页面上。每个“页面”只是一个通过CSS显示的部分——如果javascript关闭,它仍然可以工作,它只是一个长表单。因此,从表格的“页面”到“页面”,我的CSRF保持不变。此外,由于用户从不离开,“页面”导航不会“杀死”表单中输入的任何数据


考虑制作一个huuuge单页表单,并通过在CSS中隐藏和显示某些部分。“上一步”和“下一步”按钮只操纵用户看到的表单的哪一部分。

如何为选择输入数组实现这一点@stav可以JSON.stringify对象或数组并存储,然后在加载页面上解析它。任何教程或示例都很好:我忘了说这个脚本是gravity form builder的一部分,我在这里找到了用于此目的的过滤器,所以我解决了我的问题,谢谢!另外,当你显示所有部分和提交按钮时,你有一个内置的确认。我想帮助我的一个朋友,我需要修改的脚本基于wordpress gravity form builder,但我的朋友不想做核心修改,所以我必须用jquery从前端完成,但是我找不到任何例子,如何在动态构建的字段上记录数组值。我在这里找到了用于此目的的筛选器,所以我解决了我的问题,谢谢!