【问题标题】:Confirm box return value from alertify plugin and jquery来自 alertify 插件和 jquery 的确认框返回值
【发布时间】:2013-03-30 08:51:22
【问题描述】:

我的表单有一个确认对话框。它在 jquery 提交函数中。我正在使用 alertify 来显示确认对话框。但问题是我的 jquery 提交函数在 alertify 获取确认框值之前返回。阅读 alertify 是非阻塞的。有什么办法可以克服这个问题并将确认框的值返回到我的表单中?

$("#viewform").submit(function(){

      alertify.confirm("Delete the selected entry?",function(e){

             if(e)
                    return true;
              else 
                     return false;

               });


 });

该函数始终返回 true。我想返回确认框的输出。如何返回确认框的延迟返回值?

【问题讨论】:

    标签: javascript jquery forms alertify


    【解决方案1】:

    一种解决方法是使用button 而不是submit 输入,然后使用点击侦听器运行alertify。然后可以通过 jQuery 提交您的表单。以下是它的外观:

    HTML:

    <form id="form">
        <input type="button" value="Submit" id="btn">
    </form>
    

    JavaScript:

    $('#btn').click(function() {
        alertify.confirm("Delete the selected entry?",function(e){
            if(e) {
                $('#form').submit();
                return true;
            } else {
                return false;
            }
    
        });
    });
    

    【讨论】:

    • 谢谢。所以我们还需要返回true还是false? if(e){ $('#form').submit(); } 就足够了吧?
    • 是的,我认为这里不需要返回 true 或 false。为了清楚起见,我只是把它留了下来。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-18
    • 1970-01-01
    • 2014-11-15
    • 1970-01-01
    • 1970-01-01
    • 2011-04-03
    相关资源
    最近更新 更多