首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >除非用户单击特定按钮,否则如何向用户显示警报框?

除非用户单击特定按钮,否则如何向用户显示警报框?
EN

Stack Overflow用户
提问于 2016-11-04 14:15:55
回答 2查看 98关注 0票数 0

我已经用一个表单设置了一个页面,用户可以对使用PHP进行更改。当他们试图从页面导航或刷新时,就会出现一个使用JS的警告框。但是,当他们单击“保存”按钮时,仍然会出现警报框。

在用户单击“保存”按钮时,是否可以停止出现警报框?

这是我的JS:

代码语言:javascript
复制
var needToConfirm = true;

$('#save').click(function(){ 
var needToConfirm = false;
})
if (needToConfirm == true)
window.onbeforeunload = confirmExit;
function confirmExit()
{
return "You have attempted to leave this page.  If you have made any changes     to the fields without clicking the Save button, your changes will be lost.  Are you sure you want to exit this page?";
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!-- Here is my HTML (just the button): -->

<input type="submit" id="save" />
<input type="hidden"  id="save" name="submitted"  value="TRUE" />

EN

Stack Overflow用户

发布于 2016-11-04 14:33:24

首先,在if语句中不执行条件代码。它出来了,修复它,然后再试一次。如果它仍然不起作用,那么尝试以下方法:

$("#save").click()返回任何内容之前刷新页面(在本例中为needToConfirm = false )。因此,将像往常一样显示警报框。您必须按以下方式修改html:

<input type="button" id="save" />

使用javascript来提交表格..。你可以这样做:

$("#save").click(function() { var needToConfirm = false; $("#idOfForm").submit(); return false; }

另外,将其中一个按钮的ID更改为2个元素永远不会有相同的ID.或者用类代替!

票数 0
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40424917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档