2012-01-24 33 views
1

私はUpdatePanelを持っており、更新パネルの中にボタンがあります。 updatepanelは、updatepanelがポストバックを実行したときに読み込み中のグラフィックを表示するために、updateprogressコントロールをバインドしています。UpdatePanelをJavaScriptでリフレッシュさせると、UpdateProgressが表示されない

更新パネルのボタンをクリックすると、プログレスローダーが正常に表示されます。しかし、jQueryでボタンを選択して.click()を実行すると、ローダーが表示されません。パネルはポストバックしてコンテンツを正しくロードしますが、プログレスローダーはトリガーしません。

これはなぜでしょうか?

答えて

0

私は決してこの質問に対する答えを見つけられませんでしたが、それは問題ではありません。私は、更新パネルは理由のために一度に1つのリクエストしか出していないことを知りました。ページライフサイクルとビューステートは壊れないため、非同期要求は一度に1つしか作成できません。

勝利のためのMVC。

1

私はあなたのシナリオを試しました。ここでうまく動作します。ここで

ここでは、HTML

<asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
     <ContentTemplate> 
      <asp:UpdateProgress runat="server" ID="UpdateProgress1"> 
       <ProgressTemplate> 
        <img src="Images/ajax-loader.gif" /> 
       </ProgressTemplate> 
      </asp:UpdateProgress> 
      <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> 
     </ContentTemplate> 
    </asp:UpdatePanel> 

    <input id="btnTest" title="JQuery Click" onclick="ClickButton1()" type="button" value="JQuery Click" /> 

    <script type="text/javascript"> 
     function ClickButton1() {  
     // alert('#<%=Button1.ClientID %>'); 
     $('#<%=Button1.ClientID %>').click(); 
     } 
    </script> 

これは私のために動作しません5秒

protected void Button1_Click(object sender, EventArgs e) 
{ 
    Thread.Sleep(5000); 
} 
+0

のためのローディング画像を表示するバックエンド・コードです。また、UpdateProgressは通常、UpdatePanelの外部に配置されていませんか? (私は両方を試してもどちらも私のために働いた; UpdatePanelは動作したが、UpdateProgress :()は動作しなかった。 – Zeek

関連する問題