如何在jquery.ui对话框按钮函数返回后执行javaScript。

时间:2013-01-19 04:13:36

标签: javascript jquery-ui

我试图避开javascript的确认框并尝试了jquery.ui对话框。

当确认框返回true或false之后,只有剩余的javascipt将执行,但在此jquery.ui对话框中没有发生。

这是我试过的,

我有一些链接

 function checkit(){
   var istrue = showdial("confirm");
   if(istrue== true) alert("yes");
   else  alert("no");
}
function showdial(tStr)
{
     $('<div></div>').appendTo('body')
                    .html('<div><h4>Are you sure..?</h4></div>')
                    .dialog({
                        title: tStr, 
                        zIndex: 10000,
                        autoOpen: true,
                        modal: true,
                        buttons:{
                             Yes: function(){

                                $(this).dialog("close");

                                return true;
                             }
                             No: function(){
                                $(this).dialog("close");
                                return false;
                              }
                        }

               }); 

  }

如果我上面做错了,请纠正我。

在点击“是”或“否”按钮之前,它始终仅提醒“否”,。如何在该对话框返回值后运行脚本。我不希望使用setTimeout()函数。

1 个答案:

答案 0 :(得分:2)

异步代码不能返回这样的值。查看this related question,其中介绍了如何使用回调来解决此问题。