javascript - 在 POST 之前进行提交延迟

标签 javascript jquery asp.net client submit

我有按钮

   <UpdatePanel>
         <asp:Button CssClass="btn-send" runat="server"
              OnClick="SendMessage" Text="Send" />
    </UpdatePanel>

服务器端方法

protected void SendMessage(object sender, EventArgs e){...}

我需要在 POST 之前做一点延迟并显示进度条动画。我想为此使用 javascript (jquery)。

如何进行延迟提交
1) 没有服务器延迟
2) 没有带客户端脚本的第二个按钮,哪个点击服务器按钮?

最佳答案

你可以试试这样的……

<asp:Button runat="server" OnClick="SendMessage" Text="Send"
   OnClientClick="return sendMessage(this);" />

<script type="text/javascript">
  var sendBtn = null;
  function sendMessage(btn){
    if(sendBtn==null){
      sendBtn = btn;
      window.setTimeout(function(){ sendBtn.click(); }, 1000);
      // DO YOUR VISUAL STUFF HERE
      return false;
    }else{
      return true;
    }
  }
</script>

想法是点击按钮首先存储按钮对象,设置点击按钮的超时时间,然后做你想做的视觉上的事情。

然后一秒后,再次点击按钮(这次不做超时部分)

(我还没有时间学习 jquery,但我确信有一种更简单的方法可以用它来做到这一点)

关于javascript - 在 POST 之前进行提交延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11631415/

相关文章:

c# - 从代码隐藏的 ASP.net 中的 <li> 标记中删除 CSS 类

asp.net - ASP.NET State Service 版本有问题;状态服务是1.1,网站是3.5

javascript - 如何使用jquery将元素拖动到特定位置?

jquery - Drupal 7 Nivo slider 错误

c# - ASP.NET jQuery 的 ajax 函数问题

javascript - Chrome 扩展 - 获取用户在撰写邮件时输入的文本

javascript - 如何访问发送到 php 脚本的 jQuery.ajax() 返回数据

Javascript 正则表达式匹配

javascript - 在应用 CSS 后删除 anchor 标签的旧设计标题

javascript - 如何在contenteditable div中找到插入符号前后的字符长度?