页面刷新后在文本输入上保留文本仅适用于某些浏览器

Posted

技术标签:

【中文标题】页面刷新后在文本输入上保留文本仅适用于某些浏览器【英文标题】:maintain text on text input after page refreshed only works on some browser 【发布时间】:2014-10-18 09:15:20 【问题描述】:

我有一个带有一个文本输入的自动刷新页面。如果我在该文本输入上写文本并且当页面刷新时,文本仍然存在并且光标仍然是该文本的结尾。但是如果我在文本框样式中添加autocomplete = off 它将不起作用。我使用 Mozilla 31 对此进行了测试。

但是当我使用 chrome 36 测试打开时,我之前写的文本在页面刷新后消失(有或没有自动完成 = 关闭)

这是我的代码

<script type="text/javascript">
$(function () 
    var SearchInput = $('#text');
    var strLength = SearchInput.val().length;
    SearchInput.focus();
    SearchInput[0].setSelectionRange(strLength, strLength);
);

@html.TextBox("text", null, new style = "width: 800px")

【问题讨论】:

【参考方案1】:

根据我仅使用 FireFox 的经验,这是浏览器的默认行为。

如果您想确保刷新时数据始终在文本框中,那么您需要执行一些操作,例如在文本框的 onChange 中创建一个带有文本框数据的 javascript cookie,然后在其中附加该 cookie 数据页面 onLoad 事件中的文本框。如果您不想写入 cookie,还可以在刷新时向页面添加查询字符串,或者使用 HTML5 存储。

【讨论】:

你是对的,在使用 IE 8 和 Opera 15 再次测试后,刷新后的文本消失了。只有Firefox在刷新后保留该文本。感谢您提醒我使用两个以上的浏览器来开发 web 应用程序。

以上是关于页面刷新后在文本输入上保留文本仅适用于某些浏览器的主要内容,如果未能解决你的问题,请参考以下文章

Django SSL 仅适用于某些页面

模态窗口无法刷新

JSP中页面刷新后保留文本输入框的值

如何使按钮(输入)仅适用于 html 中的一个文本框?

刷新后在标签中显示文本

刷新页面后在表格上保留用户评论