【问题标题】:Chrome erases data at savingChrome 会在保存时擦除数据
【发布时间】:2018-06-29 23:48:23
【问题描述】:

我正在使用 HTML 和 javascript 创建一个学校注册表格。这个想法是学生从本地服务器打开网页(它不在互联网上)并且没有提交,但他们将其保存为本地网页(在填写表格后)。 问题是 chrome 在保存时会擦除所有字段值,而 firefox 或 edge 会保留它们,但 chrome 是学校首选的浏览器。 我的问题是:有没有办法强制 chrome 在本地保存时保留输入值?我知道可以选择另存为 PDF(保留数据),但表格不再可编辑。 页面中有一个按钮,可以将文档标题更改为学生的姓名,他们必须在保存之前按下该按钮。保存文件的方法?浏览器选项->更多工具->将页面另存为。 提前致谢。

【问题讨论】:

  • 您的意思是点击提交时所有输入值都消失了?
  • 你能告诉我你是如何准确保存填写好的表格的吗?
  • 您能否更具体一点并详细说明您面临的问题,如果您编写了代码,请在此处分享。保持最小化和自我解释。
  • 学生不要提交表格。没有提交按钮。一切都是离线完成的。他们只需使用所需信息(姓名、地址、电子邮件、电话等)填写输入字段,然后使用本地存储上的浏览器选项将表单保存为网页,并将其名称用作文件名。当您打开文件时,一切都消失了。相同的程序所有内容都保存在 Firefox 中。我想知道是否有解决方法。无论具体代码如何,每种形式都会发生这种情况。你可以试试看。
  • 为什么要离线存储一个html页面?为什么不直接用word?这是一个非常奇怪的实现。您的问题(并且评论并没有真正帮助)没有多大意义。你不能用它的输入保存一个网页……它是一个网页。这不是互联网的运作方式

标签: javascript html forms


【解决方案1】:

您可以使用每个浏览器都支持的本地存储

local storage tutorial

或者您可以使用基于文件的数据系统。只需将数据存储到浏览器可以轻松使用的文件中。

如果您想构建一个标准应用程序,则在该学校的本地服务器上部署一个数据库,该数据库将被集中化,并且每当学生提交数据时,您都可以将数据直接发送到该正在运行的服务器。

【讨论】:

  • 感谢回答,终于有人看懂了!
  • 我认为保存到本地存储功能并不好,因为它保存在每台单独的计算机上,并且在学年期间,数百个这样的表格将从大约 20 台不同的计算机中填写学校,它们是从本地服务器打开和保存的,在我看来,基于文件的数据系统是一个更好的选择,你有更多关于如何做到这一点的信息吗?,使用 firefox 打开和保存文件可能是一个选项同时。
  • 由于文件只会在本地系统上创建,所以最后你必须引入在某些机器上运行的本地服务器。所以你可以做一件事。只需使用一个系统并将其用作您学校的本地服务器(没有人可以从外部访问它)并在此系统上部署一些基于数据库或文件的系统。
  • 现在获取该系统的 IP 并编写一些可以将数据发送到该本地服务器的应用程序,但是为此,每台计算机都必须有互联网连接,我希望如果他们没有连接到 LAN,如果他们已经与 LAN 连接,然后我猜不需要互联网。希望你能得到答案。
  • 如果您对我提供的建议没问题,请投票并接受答案。
【解决方案2】:

回答我的问题的简单代码如下:

function changeHTML (){
var mytext=document.getElementById ("mytext");
var askName=document.getElementById ("askName");
mytext.innerHTML="<input type='text' value='"+askName.value+"'/>";
}

Name:<span id="mytext"><input type="text" id="askName" />
</span> 
<br/><br/>
<input type="button" onclick="changeHTML ()" value="save"  />

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多