Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在函数内部调用close方法时,即兴关闭不是关闭对话框_Javascript_Jquery_Impromptu - Fatal编程技术网

Javascript 在函数内部调用close方法时,即兴关闭不是关闭对话框

Javascript 在函数内部调用close方法时,即兴关闭不是关闭对话框,javascript,jquery,impromptu,Javascript,Jquery,Impromptu,我被这样的代码卡住了4个小时: $.loader = function (msg) { jQuery.prompt.close(); $.prompt(msg, { buttons: { }, show: 'fadeIn', promptspeed: 50, overlayspeed: 'fast' }); } function my_function() { jQuery.prompt.close(); $.loader('saving..'); $.aj

我被这样的代码卡住了4个小时:

$.loader = function (msg) {
    jQuery.prompt.close();
    $.prompt(msg, { buttons: { }, show: 'fadeIn', promptspeed: 50, overlayspeed: 'fast' });
}

function my_function() {
   jQuery.prompt.close(); 
   $.loader('saving..');
   $.ajax({ 
    type: "POST",
    url: dir + "save.php",
    data: form,
    success: function(html){
                 jQuery.prompt.close(); 
                 $.loader('loading..')
                 $.ajax({ 
             type: "POST",
             url: dir + "load.php",
             data: form,
             success: function(html){
                         jQuery.prompt.close(); 
                     }
            }
    })
}

$('#next').live('click', function () {
    $.loader('processing..');
    my_function()
})
这项任务很容易。单击#next(下一步)后,应首先显示带有“处理”对话框的对话框,然后应关闭该对话框并显示“保存”。在ajax成功调用后,它应该使用“加载”对话框加载新数据,然后消失。 除了一件让我抓狂的事情外,一切都很完美——加载后会出现带有“加载”文本的对话框,尽管最后我使用了jQuery.prompt.close()。我为此奋斗了4个小时,我已经够了。。请帮忙。。。我做错了什么?我使用jquery1.7.1

编辑:
我找到了解决办法。虽然不是真的,但它解决了我的问题:我发现impromptu使用.jqimessage类来获取对话框中显示的文本。我不是制造新的物体然后销毁它,而是制造一次,然后销毁它。同时,我只在.jqimessage框中更改了一条消息。一切都很好-看起来最简单的方法是最好的:)谢谢你的帮助。

也许对load.php的第二次ajax调用永远不会成功,例如,它会返回一个200以外的响应?它加载整个页面并显示在屏幕上,所以肯定可以确定吗?调试器说什么?(Firebug/webkit开发者)您是否尝试添加断点?我看不到任何实际使用数据的函数,也许您没有将其放入示例中?(从不使用html)