首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Alertify不会因提示而停止

Alertify不会因提示而停止
EN

Stack Overflow用户
提问于 2014-09-24 18:34:12
回答 1查看 2.1K关注 0票数 1

所以我有几行代码:

代码语言:javascript
复制
$('td').click(function (e) {
    var test = "....";
    var test2 = "....";
    var test3 = "....";
    SuppressWarning(test, test2, test3);
});

function SuppressWarning(test, test2, test3)
{
  var reason = prompt("Why are you suppressing this warning?");
  if(reason != "")
  {
    //do something
  }

当系统运行时,它将在提示符处停止,除非用户进行交互,否则它不会继续到if语句。但是,我想定制警报框,所以我决定使用alertify.js。

因此,我现在得到了下面的代码:

代码语言:javascript
复制
$('td').click(function (e) {
var test = "....";
var test2 = "....";
var test3 = "....";
SuppressWarning(test, test2, test3);
});

function SuppressWarning(test, test2, test3)
{
var reason = alertify.prompt("Message", function (e, str) {
if (e) {
    // user clicked "ok"
} else {
    // user clicked "cancel"
}
}, "Default Value");

if(reason != "")
  {
    //do something
  }

我的问题是,当系统运行时,它不会在提示符下停止;它只会转到if语句,而不包括其他语句。为什么会这样呢?为什么它不停止在提示符,以便用户可以键入一些东西?我怎么才能解决这个问题?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-09-24 18:43:18

prompt是浏览器的本机,并停止当前的代码流,就像警告框或确认一样。另一方面,警报没有。如果触发了警报,脚本就不会停止。

这就是为什么警报接受回调作为参数。function(e, str)是在用户按okcancel之后触发的。str参数是用户输入的内容。只要把你的状态移动到回调中:

代码语言:javascript
复制
alertify.prompt("Message", function (e, str) {
    if (e) {
        // user clicked "ok"
        if(str != "")
        {
            //do something
        }
    } else {
        // user clicked "cancel"
    }
}, "Default Value");
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26024012

复制
相关文章

相似问题

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