私はToolkitScriptManagerと3つの更新パネルを含むページを持っており、各更新パネルにはコントロールに基づいたトリガーがあります.今私の問題は、サーバー側のイベントが発生し、パーセンテージのようなプログレスバーを表示することです。
<asp:UpdatePanel ID="up1" runat="server" ChildrenAsTriggers="true" UpdateMode="Conditional">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="TxtZip" EventName="textchanged" />
</Triggers>
<ContentTemplate>
<asp:TextBox ID="TxtZip" runat="server" AutoPostBack="true" ClientIDMode="Static"
MaxLength="6" onkeypress="return isNumberKey(event)" CssClass="txtstyle" OnTextChanged="TxtZip_TextChanged"></asp:TextBox>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<Triggers>
<asp:PostBackTrigger ControlID="IBtnSave" />
</Triggers>
<ContentTemplate>
<span class="art-button-wrapper"><span class="l"></span><span class="r"></span>
<asp:Button ID="IBtnSave" runat="server" Text="Submit/Save" CssClass="art-button"
ClientIDMode="Static" OnClientClick="return postbackButtonClick()" OnClick="IBtnSave_Click" />
</span>
</ContentTemplate>
</asp:UpdatePanel>
私の進行状況バーコード
<asp:UpdateProgress ID="UpdateProgress1" runat="server" DynamicLayout="true">
<ProgressTemplate>
<div id="Progressbar" class="Progressbar" align="center" valign="middle" runat="server">
<asp:Image ID="Image1" Width="75" Height="95" runat="server" ImageUrl="~/images/animation_processing.gif" />
</div>
</ProgressTemplate>
</asp:UpdateProgress>
Javaスクリプトコードは
<script type="text/javascript">
//update panel and postback trigger with fileupload control upadteprogressbar code
var updateProgress = null;
function postbackButtonClick() {
updateProgress = $find("<%= UpdateProgress1.ClientID %>");
window.setTimeout("updateProgress.set_visible(true)", updateProgress.get_displayAfter());
return true;
}
</script>
postbacktrigger の理由でのみ機能するこのコードは、onclick イベントが発生する前にボタンをクリックしたとき、そのイベントは Java スクリプト関数を呼び出しますが、Async Postback トリガーはその関数を呼び出しません。