刷新页面时,停止safari显示未保存的表单提示
Stop safari from showing unsaved form prompt when page is refreshed
我有一个表单(只有一个文本区域),它是使用AJAX提交的,允许用户保存关于页面的注释。表单在页面上始终可见,您可以不断单击"保存"以不断更新备注。
在safari(但不是chrome或FF)中,如果您开始在表单中键入并点击重载,浏览器会提示您"是否确实要重载,您有未保存的更改"类型对话框。我的问题是,如果你保存笔记,然后点击重新加载,而不对文本区域进行任何进一步的更改,对话框也会弹出。在javascript中,是否有某种方法可以将表单标记为已提交//未更改,以便safari知道不显示提示?
我对safari不太确定,但在所有具有以下功能的浏览器中都可以有这种行为:
var confirmLeavePage = "Are you sure you want to exit this page, you have unsaved changes..."
window.onbeforeunload = askConfirm;
function askConfirm(){
if (confirmLeavePage != false){
return confirmLeavePage;
}
}
那么当文档没有修改时,您所要做的就是将confirmLeavePage设置为false。
希望这能有所帮助。
这里可能不是解决问题的最佳方案。。但是,如果您从表单中删除html表单标记,应该可以解决问题。
由于您已经在使用ajax,因此可以直接从DOM中获取元素的值。。
示例。。。
<form><textarea></textarea></form>
会发出消息。。其中
<textarea></textarea>
将重新加载。
希望这能在周五下午有所帮助:)
相关文章:
- 如何停止javascript的执行并允许用户保存表单
- javascript html使用webstorage保存表单
- 在浏览器会话中保存表单数据
- 空闲时自动保存表单
- 是否可以在没有用户提交表单的情况下保存表单数据
- 如何在单击“另存为草稿”按钮时使用 JavaScript 保存表单内容
- PHP 页面未保存表单和解析输出
- 使用 jquery 记住保存表单时打开的选项卡
- 使用ajax调用自动保存表单数据
- 如何在浏览器中保存表单输入
- 保存表单输入数据以在其他页面上使用
- Don't保存表单
- 如何在模态窗口中保存表单值
- 仅在提交时使用 javascript 保存表单状态
- 我如何保存表单数据与jquery和php sql
- 单击按钮保存表单中的数据
- 如何使用 HTML5 本地存储保存表单中的数据
- 如果用户没有保存表单,如何测试用户是否对表单进行了任何更改
- 如何保存表单中的信息?
- 通过ajax保存表单数据,不需要服务器代码