gpt4 book ai didi

javascript - 取消javascript中的警报弹出窗口

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:59:15 25 4
gpt4 key购买 nike

考虑这段代码:

function reason(id) {
var reason = prompt("State reason");
while (!reason.trim()) {
reason = prompt("Please enter text");
}
document.getElementById(id).value = reason;
return true;
}

它工作得很好,但是当我想通过按 escape 摆脱弹出窗口时,函数返回 true,因为表单执行了。如果我关闭/取消弹出窗口,我应该怎么做才能让它不执行任何操作?

最佳答案

... the function returns true because the form executes. What should I do to make it do nothing if I close/cancel the poppup?

这完全取决于您如何称呼您的 reason功能,但如果你想要reason返回 false什么时候prompt被取消,那么:

function reason(id) {
var reason = prompt("State reason");
while (reason !== null && !reason.trim()) { // *** Changed
reason = prompt("Please enter text");
}
if (reason === null) { // *** Added
return false; // *** Added
} // *** Added
document.getElementById(id).value = reason;
return true;
}

prompt返回 null当你取消它时。

但同样,这取决于调用 reason 的内容用 true 做一些合适的事情或 false .


旁注:您可以用相同的名称调用您的函数和其中的变量,但这不是一个好主意。如果这是一种习惯,你最终会使编写递归函数变得非常困难......

关于javascript - 取消javascript中的警报弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31252425/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com