第九篇: UpdateProgress 控件--用户中断

本文介绍如何在 ASP.NET AJAX 中实现进度取消功能,通过添加 JavaScript 函数 stop() 和调用 abortPostBack() 方法来中断异步更新操作。文中详细展示了如何在 UpdateProgress 控件中加入取消按钮,并提供了完整的示例代码。
    有时,当服务器实在运行太久了,我们能否中断它吗?答案是肯定的。

1. 打开第八篇的例子,也就是:UpdateProgress(一).aspx

2. 在 UpdateProgress(一).aspx  的<title></title>
    下面加入一段 Javascript
    <script type="text/javascript">
    function stop()
    {
        
if(Sys.WebForms.PageRequestManager.getInstance().get_isInAsyncPostBack())
        {
            Sys.WebForms.PageRequestManager.getInstance().abortPostBack();
        }
    }
    
</script>

3. UpdateProgress 中添加代码
            <asp:updateprogress ID="UpdateProgress1" runat="server">
                
<progresstemplate>
                    
<span lang="zh-cn">数据正在读取中..请稍后!!!</span>
                    
<input type="button" value ="取消" onclick="stop();" />
                
</progresstemplate>          
            
</asp:updateprogress>

UpdateProgress(一).aspx 代码如下:
Code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="UpdateProgress(一).aspx.cs" Inherits="UpdateProgress_一_" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    
<title>无标题页</title>
    
<script type="text/javascript">
    function stop()
    {
        
if(Sys.WebForms.PageRequestManager.getInstance().get_isInAsyncPostBack())
        {
            Sys.WebForms.PageRequestManager.getInstance().abortPostBack();
        }
    }
    
</script>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>  
    
<asp:ScriptManager ID="ScriptManager1" runat="server">
    
</asp:ScriptManager>
    
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
        
<ContentTemplate>
            
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            
<br />
            
<br />
            
<br />
            
<asp:updateprogress ID="UpdateProgress1" runat="server">
                
<progresstemplate>
                    
<span lang="zh-cn">数据正在读取中..请稍后!!!</span>
                    
<input type="button" value ="取消" onclick="stop();" />
                
</progresstemplate>          
            
</asp:updateprogress>
            
<br />
            
<br />
            
<br />
            
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
        
</ContentTemplate>
    
</asp:UpdatePanel>   
    
</div>
    
</form>
</body>
</html>

4. OK. 试试看 ^^



转载于:https://www.cnblogs.com/LinFx/archive/2008/01/24/2123715.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值