UpdateProgress没有显示何时从javascript手动调用doPostBack

时间:2014-03-06 09:12:23

标签: asp.net updatepanel dopostback updatepanel-progressbar

我正在使用更新面板并更新进度控制。在更新面板中,我有带TextChange事件的文本框。当用户在文本框中输入10位数时,将自动从javascript调用此事件。电话是:

__doPostBack("LabelTextBoxCode", "TextChanged");

这是我的HTML代码:

    <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
        <asp:UpdateProgress runat="server" ID="UpdateProgress1" AssociatedUpdatePanelID="UpdatePanel">
            <ProgressTemplate>
                ...processing
            </ProgressTemplate>
        </asp:UpdateProgress>
        <asp:UpdatePanel ID="UpdatePanel" runat="server" UpdateMode="Conditional">
            <ContentTemplate>
 <asp:TextBox ID="LabelTextBoxCode" runat="server" OnTextChanged="TextChanged_TextBoxCode">
                        </asp:TextBox>
    ...
  </ContentTemplate>
    </asp:UpdatePanel>

到目前为止我发现的是这个帖子UpdateProgress Not working when called thru javascript,但它对我没有帮助(我不知道如何在我的情况下使用它)。

当我按下更新面板中的任何按钮时,显示进度条,问题就是从javascript手动调用__doPostBack。

如何修复它并使updateProgress有效?

1 个答案:

答案 0 :(得分:0)

直接调用__doPostback会绕过设置更新面板的所有触发器。因此,为了避免这种情况,您可以调用OnBeginRequest处理程序,也可以触发相同的按钮单击而不是调用__dopostback。要触发按钮单击,您可以使用jquery触发器功能。您可以获得示例here

希望这有帮助。