从后端在服务器上调用 div 运行 无法使用更新面板?

Calling div run at server from backend not working with update panel?

我用文本框搜索构建了搜索逻辑。但是,当我搜索并执行查询时,我希望微调器在获取结果时 运行。

这是我的代码:-

两种方式我都试过了,但是微调器没有显示。

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
            <asp:UpdatePanel ID="UpdatePanel1" runat="server" ClientIDMode="Inherit" UpdateMode="Always">
        <ContentTemplate>
        <asp:TextBox runat="server" ID="Searchtext" OnTextChanged="Searchtext_TextChanged" AutoPostBack="true"></asp:TextBox>
        <div id="spinner" runat="server">
        <img src="././spinner.gif/>
        <div>
        </ContentTemplate>
            </asp:UpdatePanel>



    <script type="text/javascript">
             function show()
            {
                $('#spinner').css("display", "block");
            }
</script>

    protected void Searchtext_TextChanged(object sender, EventArgs e)
    {
          spinner.Visible = true;
      searchLogic();
      spinner.Visible = false;

    }

其他方式:-

 <div id="spinner" style="display:none;">
            <img src="././spinner.gif/>
            <div>

public void searchLogic()
    {
        sqlLogic(); // Queries and Results
    }

    protected void Searchtext_TextChanged(object sender, EventArgs e)
    {
          ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "MyFunction", "show()", true);
      searchLogic(); 

    }

如果我在服务器上设置 运行 或不设置,当我搜索时它显示等待 chrome。但是微调器没有被解雇。我做错了什么?

我意识到使用 Asp:UpdateProgress 解决它是最好的方法并且我解决了它。 谢谢op。