我使用这样的代码被困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成功调用之后,它应该使用'loading'对话框加载新数据,然后消失。 一切都很完美,除了一件让我发疯的事情 - 加载后会出现带有'loading'文本的对话框,尽管我最后使用的是jQuery.prompt.close()。我和它一起战斗了4个小时,我已经够了......请帮忙......我做错了什么?我使用jquery 1.7.1。
编辑: 我找到了解决方案。不是真的,但它解决了我的问题:我发现即兴使用.jqimessage类来获取对话框中显示的文本。而不是制造新的物体,然后摧毁它,我做了一次,然后摧毁它。与此同时,我只在.jqimessage框中更改了一条消息。一切都很好 - 看起来最简单的方法是最好的:)感谢您的帮助。