Js临时停止点击进度()

时间:2012-12-27 06:30:45

标签: javascript jquery button click progress

我正在寻找停止按钮点击进度的方法,直到确认完毕。

请在“显示确认框”返回true之前建议暂时停止进度的方法。现在我的功能将继续向前发展,无论如何。

.click(function(){
    //Show Confirm Box <- will return true of false

    //Start Process if true;

});

非常感谢。

3 个答案:

答案 0 :(得分:2)

confirm()的呼叫是同步的。也就是说,在用户关闭该框之前,您的代码将被有效暂停。

if (confirm('some message')) {
    // User confirmed, do something here
}

现在,如果您没有使用confirm(),而是使用自己的自定义模式对话框或类似的东西,那么您将需要使用回调。

您不应阻止脚本执行,因为该页面将显示为锁定给用户。相反,将回调函数传递给显示对话框的函数,并在完成后让对话框调用该函数。

function showDialog (confirmCallback) {
    // Show dialog here
    if (result === 'yes') { // replace this, obviously
        confirmCallback();
    }
}

.click(function(){
    showDialog(function () {
        // start process
    });
});

答案 1 :(得分:1)

click事件的参数是一个函数处理程序,它将在click事件发生时执行。

因此,当确认对话框返回错误值时,您始终可以从该函数返回。

代码将是这样的

jQuery(".button").click( function(){
   var ans = confirm("Do you want to proceed further ?");
   if(!ans) return;

   alert("Now you can code the rest ");

});

我创造了一个小提琴,请查看以下内容

http://jsfiddle.net/shidhincr/Ubj7S/1/

答案 2 :(得分:0)

你有没有看到这个问题? pausing execution in custom confirm box

根据确认框中的用户输入分割代码并调用函数