2014-03-06 2 views
0

Я использую панель обновления и обновляю контроль прогресса. В панели обновления у меня есть текстовое поле с событием TextChange. Это событие автоматически вызывается из javascript, когда пользователь вводит 10 цифр в текстовое поле. Вызов:UpdateProgress не отображается, когда doPostBack вручную вызывается из 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, но это не помогает мне (я не знаю, как использовать это право в мое дело).

Когда я нажимаю любую кнопку на панели обновления, отображается индикатор выполнения, проблема только в том, что это вручную называется __doPostBack из javascript.

Как исправить это и сделать updateProgress работает?

+0

вы можете найти решение своей проблемы здесь: http://stackoverflow.com/questions/996957/why-does-update-progress-does-not-fire-when-associatedupdatepanelid-is-set –

+0

OnBeginRequest не является когда я использую __doPostBack –

ответ

0

Непосредственный вызов __doPostback обходит все триггеры, которые устанавливают панель обновления в действии. Поэтому, чтобы избежать этого, вы можете либо вызвать обработчик OnBeginRequest, либо вы можете вызвать тот же самый щелчок на кнопке вместо вызова __dopostback. Для запуска нажатия кнопки вы можете использовать функцию запуска jquery. Вы можете получить пример here.

Надеюсь, это поможет.

+0

Я решил его с помощью кнопки (с дисплеем: нет), а затем вместо вызова __doPostBack я запускаю эту кнопку. Это не идеальное решение, но я работаю. благодаря –

Смежные вопросы