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

本文介绍如何在ASP.NET AJAX应用中实现更新过程的中断功能。通过添加JavaScript函数和UpdateProgress控件,用户可以在数据加载过程中选择取消操作。具体步骤包括在页面中加入自定义的JavaScript函数stop()来检测并终止异步回发。

    有时,当服务器实在运行太久了,我们能否中断它吗?答案是肯定的。

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 " > 数据正在读取中dot.gif..请稍后 !!!</ span >
                    
< input type = " button "  value  = " 取消 "  onclick = " stop(); "   />
                
</ progresstemplate >           
            
</ asp:updateprogress >


UpdateProgress(一).aspx 代码如下:

ContractedBlock.gif ExpandedBlockStart.gif 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">数据正在读取中dot.gif..请稍后!!!</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. 试试看 ^^
2010012712061651.jpg

转载于:https://www.cnblogs.com/net123/archive/2010/01/27/1657401.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值