Javascript提示符()-取消按钮以终止函数

Javascript提示符()-取消按钮以终止函数,javascript,prompt,Javascript,Prompt,我正在调用一个Javascriptwindow.prompt()并提示用户提交一个变量,我将其与另一个变量进行比较(一种非常基本的密码保护)。但是,如果在提示符()窗口中单击“cancel”,函数将不会简单地终止,而是将变量与空字符串进行比较(用户选择不按“cancel”提交该字符串),从而使函数继续执行else{}部分 我的问题是,按下cancel时如何终止该功能?我只需要知道如何定位取消按钮 通常我只会在按钮的单击()上调用.stop(),但我不知道如何定位提示窗口的取消按钮。您应该明确检查

我正在调用一个Javascript
window.prompt()
并提示用户提交一个变量,我将其与另一个变量进行比较(一种非常基本的密码保护)。但是,如果在
提示符()
窗口中单击
“cancel”
,函数将不会简单地终止,而是将变量与空字符串进行比较(用户选择不按“cancel”提交该字符串),从而使函数继续执行
else{}
部分

我的问题是,按下cancel时如何终止该功能?我只需要知道如何定位取消按钮


通常我只会在按钮的
单击()
上调用
.stop()
,但我不知道如何定位提示窗口的取消按钮。

您应该明确检查
null
作为返回值(使用三重相等)并在结果出现时返回
return

var result = prompt("OK?");
if (result === null) {
    return;
}
这允许您区分空字符串,空字符串是当用户单击
OK
但不输入任何内容时返回的字符串。

如果用户按
OK
'
未提交值),则返回字符串。如果用户按了
Cancel
,则返回
null
。您只需检查该值是否为
null

function doSomething() {
    var input;
    input = prompt('Do something?');
    if (input === null) {
        return; //break out of the function early
    }
    switch (input) {
    case 'fun':
        doFun();
        break;
    case 'boring':
        beBoring();
        break;
    }
}

你能帮我查一下吗

if (prompt_responce == null)

判断是否关闭。

处理“提示”结果的一个重要问题是,Safari(至少版本9.1.2)在单击“取消”时返回“”而不是null。这意味着:if(result==null)返回;不起作用,您无法区分输入空字符串和取消。请尝试:

message = prompt("Enter text");
if(message == "null" || message == null || message == "" );

这对我很有效。

使用event.target..它将为您提供目标元素引用。
提示符
在按下取消按钮时返回
null
。太棒了!非常感谢你的帮助!正是我想要的。非常简单,真的。我完全忘记了“null”的返回。太棒了!非常感谢你的帮助!你的解释使它看起来如此明显,就像是在脸上打了一记耳光!哈哈。再次感谢。:)如果这回答了您的问题,请务必选中它旁边的复选标记,将其标记为答案。好的-我是这个网站的不速之客,所以我不知道。@JustinWard,如果您还不知道,我建议您检查一下。如果用户真的想提供字符串“null”,该怎么办?