2011-05-31 84 views
1

我格“附着物”不能被称为是不是清爽的后背部和页面加载()不会被调用页面加载()后回传

<div id ="attachments"> 
<asp:UpdatePanel ID="updtPnlAttachements" runat ="server" > 

    <ContentTemplate> 
     <asp:GridView ID="gvAttachments" runat="server" ClientIDMode = "Static" Width ="100%"> 
      <Columns> 


      </Columns> 
      <EmptyDataTemplate> 
      <div> Sorry Empty</div> 
      </EmptyDataTemplate>    
     </asp:GridView> 

    </ContentTemplate> 

</asp:UpdatePanel> 

使得该按钮来调用

后后
public void ReportLinkButton_Click(object sender, EventArgs e) 
{ 

    LinkButton Lbtn = (LinkButton)sender; 
    string assessmentString = Lbtn.CommandArgument; 
    Guid assessmentID = new Guid(assessmentString); 

    DR_Data db = new DR_Data(); 
    var reports = db.GetAttachmentsByAssessmentID(assessmentID).ToList(); 

    gvAttachments.DataSource = reports; 
    gvAttachments.DataBind(); 

    if (reports.Count() > 0) 
    { 
     gvAttachments.HeaderRow.TableSection = TableRowSection.TableHeader; 
     gvAttachments.FooterRow.TableSection = TableRowSection.TableFooter; 
    } 


} 

我的剧本是这样的

 function pageLoad() {var totalRows = $("#<%=gvAttachments.ClientID %> tr").length; 

    if (totalRows > 0) { 

     $("#dialog:ui-dialog").dialog("destroy"); 

     $("#attachments").dialog({ 
      hide: "fold", 
      show: "blind", 
      height: 500, 
      width: 800, 
      modal: true 
     }); 
    } 

    $('#gvNcReports').dataTable({ 
     "bJQueryUI": true, 
     "sPaginationType": "full_numbers" 
    }); 
}` 

有什么建议。由于

*更新**

我有多个更新面板,一旦我把他们赶走它的工作。

+2

我没有看到函数'pageLoad'在任何地方被调用......这可能是你的问题? – devmatt 2011-05-31 22:00:31

回答

0

尝试:

using Sys.Application.add_load(function(sender, e) { 

}); 

,看看是否有差别。当更新面板请求结束时,您还可以使用:

var prm = Sys.WebForms.PageRequestManager.getInstance(); 
prm.add_endRequest(function(sender, e) { 

}); 

HTH。

0

II结束了加入这Page_Load中和它的作品

string script = @"<script> 
        function pageLoad() { 
        $('#gvNcReports').dataTable({ 
         "bJQueryUI": true, 
         "bPaginate": false 
          }); 
        $("#dialog:ui-dialog").dialog("destroy"); 
        $("#updtPnlAttachements").dialog({ 
        hide: "fold", 
        show: "blind", 
        height: 500, 
        width: 800, 
        modal: true 
        }); 
       } 
       });</script>"; 

Page.ClientScript.RegisterClientScriptBlock(this.GetType(),"hover",script); 

但是我还是要在标题中添加$(文件)。就绪和相同的脚本,以当它最初呈现确保一切正常,这是不好的做法?