jquery - 单击按钮时显示 "loading"动画

标签 jquery html css ajax

我想做一些非常简单的事情。 我的页面中有一个按钮。

<form action="/process" method="POST">
   <input class="btn btn-large btn-primary" type="submit" value='Analyze Topics'>
    </form>

现在我想要的是当用户按下这个提交按钮时。它显示“正在加载”gif 动画,直到它从服务器获得响应。

但我一直在苦苦挣扎。

我该如何实现?

最佳答案

如果您正在使用 ajax(使其尽可能简单)

  1. 将加载的 gif 图像添加到 html 中并使其隐藏(现在使用 html 本身的样式,您可以将其添加到单独的 CSS 中):

    <img src="path\to\loading\gif" id="img" style="display:none"/ >
    
  2. 点击按钮时显示图像,成功时再次隐藏

    $('#buttonID').click(function(){
      $('#img').show(); //<----here
      $.ajax({
        ....
       success:function(result){
           $('#img').hide();  //<--- hide again
       }
    }
    

确保在 ajax 错误回调中隐藏图像,以确保即使 ajax 失败 gif 也隐藏。

关于jquery - 单击按钮时显示 "loading"动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15288002/

相关文章:

javascript - Angular 2 : call component method from javascript function

javascript - 类型 'checked' 上不存在属性 'HTMLElement'。

javascript - 如何使用 jQuery 创建元素并动态选择它们

php - 如何更改 nicedit 默认颜色

javascript - div 中的 CSS 绝对定位元素

jquery - 无法从 json 文件中提取不同的数组名称

html - 如何将多个按钮与响应式设计内联?

javascript - 如何重用我的代码 javascript 的功能?

css - 如何用CSS动画将五边形对折?

css - 下拉菜单仅显示一个列表项