javascript - 阻止用户在没有警报的情况下退出无模式窗口
问题描述
我有一个客户端使用 JSP (Java) 和 Javascript/JQuery 作为他们的页面。我需要一个特定的无模式弹出页面,如果描述文本区域中有文本,用户不能 X 出窗口(他们需要使用取消按钮或清除文本)。这部分很简单,我找到了很多在线方法。我遇到的问题是: 他们不希望警报框中的错误,他们希望错误消息简单地显示在同一窗口中,而无需单击并关闭警报。 如果没有警告框,我似乎找不到任何会禁用 X 按钮的东西。此外,我们与浏览器无关,因此该解决方案必须适用于任何浏览器。
如果此警报是由浏览器强制执行的并且无法解决,我显然可以向客户解释这一点,但我不确定是否是这种情况。
所以,我要求以太坊提供一些关于如何满足要求的想法,或者如果要求是不可能的,请提供一些证据来支持这一点。
这是我迄今为止尝试过的,但给出了警告框,所以它不能令人满意地满足要求:
function isDescriptionPopulated() {
var desc = $("#description")
.val();
if (desc === "") {
return false;
} else {
return true;
}
}
window.addEventListener('beforeunload', function(e) {
if (isDescriptionPopulated()) {
e.preventDefault();
e.returnValue = undefined;
}
});
我远不是 Javascript 专家,所以我希望你们中的一个人可以引导我朝着正确的方向前进。
解决方案
推荐阅读
- gradle - 收集父项目构建目录中的文件
- python-3.x - 比较文字字符串与 subprocess.Popen PowerShell 输出失败
- php - 使用 PHP 从查询字符串中获取倒数第二个参数
- android - 如何将 Shrinker (R8) 与 react-native 一起使用
- sql - 将列数据放入正确的目标列sql ssis
- python - 散景装饰器@without_document_lock() 是什么意思?
- java - 如何在 Spring Boot 2 项目中生成 CRUD UI?类似于 Django 的做法
- javascript - 用 Ag-grid 和 Razor Pages 书写口音
- ansible-inventory - 如何从变量文件中识别我的剧本中的主机?
- java - 在谷歌地图上删除以前的方向路线