2013-07-26 3 views
0

Я пытаюсь обновить gridview asp.net из метода close of Growl Message.__PostBack from with Growl Message

код JQuery является:

$.gritter.add({ 
       title: 'Success', 
       text: msg.d[0], 
           sticky: true, 
           after_close: function() { 
            __doPostBack('UpdatePanel1', ''); 
           } 
          }); 

Элемент GridView панели обновления:

 <div class="module_content"> 

        <asp:Label runat="server" ID="Label1" /> 
        <asp:GridView ID="grd1"> 
     <Columns> 
      <asp:TemplateField> 
         <ItemTemplate> 
          <asp:Hyperlink href="#" id="getSessionID" class="view-details" runat="server">View details</asp:Hyperlink> 
         </ItemTemplate> 
        </asp:TemplateField> 

      <asp:TemplateField HeaderText="Message Id"> 
       <ItemTemplate> 
        <%# Eval("SessionID") %> 
       </ItemTemplate> 
      </asp:TemplateField>   
      <asp:TemplateField HeaderText="Sender"> 
       <ItemTemplate> 
        <%# Eval("Sender") %> 
       </ItemTemplate> 
      </asp:TemplateField>     
      <asp:TemplateField HeaderText="Message Date"> 
       <ItemTemplate> 
        <asp:HyperLink CssClass="msgDateDate" ID="lnkMsgDateSummary" Text='<%#DateTime.Parse(Eval("MsgDate").ToString()).ToShortDateString()%>' runat="server" /> 
       </ItemTemplate> 
      </asp:TemplateField>     
      <asp:TemplateField HeaderText="Message Type"> 
       <ItemTemplate> 
        <asp:HyperLink CssClass="msgDateType" ID="lnkMsgDateType" Text='<%# Eval("MsgType")%>' runat="server" /> 
       </ItemTemplate> 
      </asp:TemplateField>     
      <asp:TemplateField HeaderText="Reference"> 
       <ItemTemplate> 
        <%# Eval("MsgRef")%> 
       </ItemTemplate> 
      </asp:TemplateField> 
      <asp:TemplateField HeaderText="Status"> 
       <ItemTemplate> 
        <%# Eval("Status")%> 
       </ItemTemplate> 
      </asp:TemplateField>     
     </Columns> 
    </asp:GridView> 
     </div> 
       </ContentTemplate> 
      </asp:UpdatePanel>   

В GridView является гиперссылкой, которая открывает диалог, диалог по телефону веб-метод, который приводит к изменению данных изменения сетки.

Я использую уведомление Growl, чтобы сообщить конечному пользователю, что что-то изменилось, и нажав кнопку ok, вызывается функция after_close.

Когда я отладки OnLoad = UpdatePanel1_Load называется, и я могу видеть, что все изменения были связаны и т.д.

Однако моя GridView общая исчезает после того, как after_close метод запускается, это даже не в DOM больше.

Как ни странно, хотя на этикетке есть!

Может ли кто-нибудь сказать мне, почему моя сетка исчезнет?

* РЕДАКТИРОВАНИЕ *

Хорошо, таким образом я добавил EmptyDataText к GridView, и текст, заданный здесь видна. Итак, хотя вызов bindmethod мой Gridview пуст!

ответ

0

Проблема была ошибка пользователя. У меня был случай, в котором была загружена информация о сетках hte на основе даты, выбранной в раскрывающемся списке, затем выпадающее меню было пустым, поэтому мой код выполнялся, как ожидалось, i/e никаких данных для отображения plonker :-)

0

На этапе загрузки страницы вам необходимо выполнить проверку, если значение ispostback истинно, а затем не загружать страницу по умолчанию, т.е. привязать вид сетки. Надеюсь, это поможет.