Asp.net 如何在回发触发器中添加进度条

Asp.net 如何在回发触发器中添加进度条,asp.net,Asp.net,我正在我的项目中使用更新面板。我在面板内使用了两个按钮控件。我已经给了那个按钮回发触发器,但是进度条对那个按钮控件不起作用。因为回发触发器。如果我移除回发触发器,它会正常工作。但我想在我的按钮上添加回发触发器。有人能帮我解决这个问题吗 提前感谢 <script type="text/javascript"> var updateProgress = null; function postbackButtonClick() { updateProgre

我正在我的项目中使用更新面板。我在面板内使用了两个按钮控件。我已经给了那个按钮回发触发器,但是进度条对那个按钮控件不起作用。因为回发触发器。如果我移除回发触发器,它会正常工作。但我想在我的按钮上添加回发触发器。有人能帮我解决这个问题吗

提前感谢


<script type="text/javascript">
    var updateProgress = null;

    function postbackButtonClick() {
        updateProgress = $find("<%= UpdateProgress1.ClientID %>");
        window.setTimeout("updateProgress.set_visible(true)", updateProgress.get_displayAfter());
        return true;
    }
</script>

<asp:UpdatePanel runat="server">
        <Triggers>
            <asp:PostBackTrigger ControlID="SyncButton" />
        </Triggers>
        <ContentTemplate>
            <asp:Button runat="server" ID="AsyncButton" Text="Click for Async Postback" OnClick="AsyncButton_OnClick" />
            <asp:Button runat="server" ID="SyncButton" Text="Click for Sync Postback" OnClick="SyncButton_OnClick"
                OnClientClick="return postbackButtonClick();" />
        </ContentTemplate>
    </asp:UpdatePanel>
    <asp:UpdateProgress runat="server" ID="UpdateProgress1">
        <ProgressTemplate>
            Please wait...
        </ProgressTemplate>
    </asp:UpdateProgress>
var updateProgress=null; 函数postbackButtonClick(){ updateProgress=$find(“”); setTimeout(“updateProgress.set_visible(true)”,updateProgress.get_displayAfter(); 返回true; } 请稍候。。。
我找到了这个,它适合我。您可以根据需要进行更改 它适用于每个页面的回发,如果您想限制,那么就根据您的需求更改代码

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<style type="text/css">
.modalPopup
{
background-color: #696969;
filter: alpha(opacity=40);
opacity: 0.7;
xindex:-1;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server"/>
<script type="text/javascript">
var prm = Sys.WebForms.PageRequestManager.getInstance();
//Raised before processing of an asynchronous postback starts and the postback request is sent to the server.
prm.add_beginRequest(BeginRequestHandler);
// Raised after an asynchronous postback is finished and control has been returned to the browser.
prm.add_endRequest(EndRequestHandler);
function BeginRequestHandler(sender, args) {
//Shows the modal popup - the update progress
var popup = $find('<%= modalPopup.ClientID %>');
if (popup != null) {
popup.show();
}
}

function EndRequestHandler(sender, args) {
//Hide the modal popup - the update progress
var popup = $find('<%= modalPopup.ClientID %>');
if (popup != null) {
popup.hide();
}
}
</script>
<div>
<asp:UpdateProgress ID="UpdateProgress" runat="server">
<ProgressTemplate>
<asp:Image ID="Image1" ImageUrl="loader.gif" AlternateText="Processing" runat="server" />
</ProgressTemplate>
</asp:UpdateProgress>
<ajaxToolkit:ModalPopupExtender ID="modalPopup" runat="server" TargetControlID="UpdateProgress"
PopupControlID="UpdateProgress" BackgroundCssClass="modalPopup" />
<asp:UpdatePanel ID="pnlData" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Button ID="btnSubmit" runat="server" Text="Submit" onclick="btnSubmit_Click"/>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
</body>
</html> 

莫达尔波普先生
{
背景色:#6969;
过滤器:α(不透明度=40);
不透明度:0.7;
xindex:-1;
}
var prm=Sys.WebForms.PageRequestManager.getInstance();
//在异步回发处理开始并将回发请求发送到服务器之前引发。
prm.add_beginRequest(BeginRequestHandler);
//异步回发完成且控件已返回到浏览器后引发。
prm.add_endRequest(EndRequestHandler);
函数BeginRequestHandler(发送方,参数){
//显示模式弹出窗口-更新进度
var popup=$find(“”);
如果(弹出!=null){
popup.show();
}
}
函数EndRequestHandler(发送方,参数){
//隐藏模式弹出窗口-更新进度
var popup=$find(“”);
如果(弹出!=null){
popup.hide();
}
}

Hi,这很好,但在回发完成后,如何设置updateProgress.set_visible(false)。。。