• .NET服务器端按钮在客户端点击后禁用,服务端执行完事件后再次激活


      .NET系统经常服务器在后台执行较复杂的操作未能及时响应客户端,此时客户端就会以为之前点的按钮无效再次点击又向服务器发起新的请求,产生恶性循环。

    通过以下方法可将按钮失效,等服务器响应后重新激活:

    思路:将该按钮隐藏,新增一个html按钮,点击后执行JS方法,点击后将按钮禁用,然后触发隐藏的服务器按钮的Click事件。在服务器端执行完后返回客户端,将html按钮重新激活。

    客户端代码:

     1     <script>
     2         function doMyEvent(sender) {
     3             sender.disabled = "disabled";
     4             document.getElementById("<%=btnExcel.ClientID%>").click();
     5         }
     6     </script>
     7 
     8    <table>
     9       <tr>
    10          <td>选择文件
    11              <input class="inputtxt1" id="FileUpload" type="file" size="20" name="FileUpload"
    12                    runat="server" unselectable="on" style=" 300px" />
    13              <input id="myBtn" type="button" value="导入Excel" class="btnbg" onclick="doMyEvent(this)" />
    14              <asp:Button ID="btnExcel" runat="server" OnClick="btnAddLib_Click" Style="display: none"></asp:Button>
    15          </td>
    16      </tr>
    17   </table>

    服务器端代码:

    1 protected void btnAddLib_Click(object sender, System.EventArgs e)
    2 {
    3     //………….
    4     this.WriteAjaxMessage("document.getElementById('myBtn').disabled = '';");
    5 }
    Yi只渴望成长的码农~
  • 相关阅读:
    linux常用网络命令
    linux常用命令
    内核驱动——符号表的导出
    内核模块传参
    *** No rule to make target 'param'. Stop. 的问题
    mmap操作荔枝派gpio v3s Linux
    交叉编译 -sh: ./xxx: not found 的问题
    linux驱动 第一个驱动
    ubuntu 16.04 开机脚本
    V3s录音 交叉编译alsa linux
  • 原文地址:https://www.cnblogs.com/Kelly-Zheng/p/5324727.html
Copyright © 2020-2023  润新知