提供“进行中”…“完成”通知的最简单方法?

问题描述

| 我不是编程新手,但是在Javascript / Web开发中有点生锈。我正在使用Rails构建应用程序,并且我们要进行一些耗时的操作,以期向用户提供反馈。基本上,我想使用AJAX做这样的事情: [用户单击“确定”或“继续”) [可选确认框] 操作发生时,显示状态消息“正在工作...” 当操作完成并且从服务器返回数据时,状态消息更改为\“ Done!\”,并呈现结果或发生一些回调。 自从我进行Web开发以来已经有一段时间了,如何实现这样的目标的简单示例将非常有帮助。谢谢。     

解决方法

        
$(window).ajaxStart(function() {
    $(\"#loader\").show();
}).ajaxStop(function() {
    $(\"#loader\").hide();
});
只是全局绑定即可启动和停止。本示例显示和隐藏加载程序div。通常,您有一个带有微调框的div,让用户知道它正在加载。 微调框的消失应该足够了,一条“完成”的消息就太过分了。     ,        
$.ajax({
   type: \"POST\",url: \"some.php\",data: \"name=John&location=Boston\",beforeSend(jqXHR,settings) {
      $(body).append(\'<div id=\"overlayStatus\">Working...</div>\');
   },complete(jqXHR,textStatus) {
      $(\'#overlayStatus\').html(\"Ajax call completed: \" + textStatus);
      setTimeout(function(){
         $(\'#overlayStatus\').hide();
      },1000);
   }
});
    ,        您是在烘焙自己的AJAX框架,还是在使用内置的in Rails?如果是稍后的情况,请查看
linkt_to
的选项(特别是:: update一) http://edgeguides.rubyonrails.org/ajax_on_rails.html