Asp.net

asp:UpdateProgress - 禁止換行

  • May 17, 2018

我已經開始使用 ASP.net AJAX(最後☺)。我有一個更新面板和一個 asp:UpdateProgress。我的問題:UpdateProgress 總是強制換行,因為它呈現為 div 標記。

有沒有辦法強迫它變成一個跨度?我想將它顯示在與其他一些控制項相同的行上,而不必使用表格,甚至不必CSS 中使用絕對定位。

我堅持使用 ASP.net AJAX 1.0 和 .net 3.0,如果這有所作為的話。

只需將 UpdateProgress 放在 style=“position:absolute;” 的範圍內

我有同樣的問題。沒有簡單的方法可以告訴 updateProgress 內聯渲染。您最好滾動自己的 updateProgress 元素。您可以添加 beginRequest 偵聽器和 endRequest 偵聽器來顯示和隱藏要內聯顯示的元素。這是一個簡單的頁面,顯示瞭如何做到這一點:

aspx

<form id="form1" runat="server">
   <div>
       <asp:ScriptManager ID="sm" runat="server"></asp:ScriptManager>


   <asp:UpdatePanel runat="server" ID="up1" UpdateMode="Always">
       <ContentTemplate>
           <asp:Label ID="lblTest" runat="server"></asp:Label>
           <asp:Button ID="btnTest" runat="server" Text="Test" OnClick="btnTest_OnClick" />
       </ContentTemplate>    
   </asp:UpdatePanel>
   <img id="loadingImg" src="../../../images/loading.gif" style="display:none;"/><span>Some Inline text</span>

   <script>

       Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(function(sender, args) {
           if (args.get_postBackElement().id == "btnTest") {
               document.getElementById("loadingImg").style.display = "inline";
           }
       });


       Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function(sender, args) {
           if (document.getElementById("loadingImg").style.display != "none") {
               document.getElementById("loadingImg").style.display = "none";
           }
       });

   </script>

   </div>
</form>

CS

public partial class updateProgressTest : System.Web.UI.Page
{
   protected void btnTest_OnClick(object sender, EventArgs e)
   {
       System.Threading.Thread.Sleep(1000);
       this.lblTest.Text = "I was changed on the server! Yay!";
   }
}

引用自:https://stackoverflow.com/questions/42499