用ajax如何在页面加载时显示进度条,(用updateprogress控件显示)

解决方案 »

  1.   

    前台代码:
    <form id="form1" runat="server">    <div>        <asp:Label ID="lheader" runat="server" Font-Bold="True" Font-Size="Large" Text="使用UpdateProgress控件"></asp:Label><br />        <hr />        &nbsp;</div>        <asp:ScriptManager ID="ScriptManager1" runat="server">        </asp:ScriptManager>        <asp:UpdatePanel ID="UpdatePanel1" runat="server">            <ContentTemplate>             <asp:Label ID="linfo" runat="server" Text="单击下面按钮进行测试"></asp:Label><br />                <asp:Button ID="btTest" runat="server" OnClick="btTest_Click" Text="测试" /><br />                <asp:Label ID="lResult" runat="server"></asp:Label>            </ContentTemplate>        </asp:UpdatePanel>        <asp:UpdateProgress ID="UpdateProgress1" runat="server">            <ProgressTemplate >                <div id="iLoading" style="font-weight: bold; font-size: large; left: 20px; text-transform: capitalize; color: red; font-family: Monospace; position: absolute; top: 50px; background-color: #99ccff;">                    Loading......                               </div>            </ProgressTemplate>        </asp:UpdateProgress>    </form>
    后台代码:
    protected void btTest_Click(object sender, EventArgs e)    {        //设置延迟时间,以便能显示UpdateProgress控件        System.Threading.Thread.Sleep(6000);        string strMsg = "欢迎光临盛唐软件开发有限公司<br >";        strMsg += "当前时间是:" + DateTime.Now.ToString();        lResult.Text = strMsg;    }
      

  2.   

    一般都是伪进度,用一个gif图片显示进度条。。ajax读取完之后把它给display而已。
    要真做到像windwos安装程序那样100%符合字节传输量的,貌似只有flash能做到。
      

  3.   

    怎样判断ajax开始请求和结束请求,可以给出代码吗?谢谢,拜托各位大虾了
      

  4.   

    用extjs可以这样写的,Ext.MessageBox.show
                                    (
                                        {
                                            msg: '正在保存,请稍等...',
                progressText: 'Saving...',
                width:300,
                wait:true,
                waitConfig: {interval:200},
                icon:'',
                animEl: 'saving'
                                        }
                                    );
                                    setTimeout(function(){}, 1000);不知道是否有帮助
      

  5.   

    9楼的:
    哇塞,看不懂,我是用c#,开发web程序的想借助ajax实现
      

  6.   

    updateprogress本身就是干这个事情的
      

  7.   

    我知道updateprogress本身就是干这个事情的,但必须得按钮触发才行,我是说加载的时候显示,或者触发按钮事件也行,可我总是触发不了
      

  8.   

    必须按钮的话.你可以弄一个隐藏按钮.或者干脆弄一个刷新内容(比如刷新文章)的按钮,
    然后在页面加载完成之后使用js调用__doPostBack('LinkButton1','')   LinkButton1是控件名其实上面都说了.基本都是伪的进度条.弄一个gif.显示正在加载...后台用ajax去服务器读取数据.当ajax在success的时候就把gif隐藏或者替换成读取的内容就可以了....