Javascript 在函数内部调用close方法时,即兴关闭不是关闭对话框
我被这样的代码卡住了4个小时: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
$.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)