2015-02-03 4 views
1

Я хочу вызвать функцию jQuery после отображения ASP.NET GridView. Я попробовал функции готовности/загрузки, но никто не работает для меня.Функция вызова JQuery после загрузки сетки asp.net

сетка находится внутри панели обновления

<asp:GridView ID="grdNumberPlan" runat="server" 
    CssClass="table table-condensed table-hover table-striped rt"   
    Visible="false"> 
</asp:GridView> 
$('#<%=grdNumberPlan.ClientID%>').ready(function() { 
    alert('hello'); 
}); 

$('#<%=grdNumberPlan.ClientID%>').load(function() { 
    alert('hello'); 
}); 

aspx.cs код

protected void ddlCity_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     try 
     { 

      if (ddlHLR.SelectedValue == "0") 
      { 
       ((UIMaster)Page.Master).SetMessage(MessageType.Warnining, "Kindly select HLR"); 
       grdNumberPlan.DataSource = null; 
       grdNumberPlan.DataBind(); 
       rowNewRanges.Visible = false; 
       grdNumberPlan.Visible = false; 
       return; 
      } 

      if (ddlCity.SelectedValue == "0") 
      { 
       ((UIMaster)Page.Master).SetMessage(MessageType.Warnining, "Select the city"); 
       grdNumberPlan.DataSource = null; 
       grdNumberPlan.DataBind(); 
       rowNumPlanSum.Visible = false; 
       grdNumberPlan.Visible = false; 
       return; 
      } 

      //rangeList(); 

      NumberingPlan objNumberingPlan = new NumberingPlan(); 
      objNumberingPlan.CityID = Convert.ToInt32(ddlCity.SelectedValue); 
      objNumberingPlan.HlrID = Convert.ToInt32(ddlHLR.SelectedValue); 
      objNumberingPlan.ExclusiveType = Convert.ToInt32(ddlIssuanceType.IsExclusive.ToString()); 
      objNumberingPlan.Operation_Type = OperationType.Get; 

      InventoryManagementServiceClient client = new InventoryManagementServiceClient(); 

      DataTable dt = new DataTable(); 
      dt = client.GetNumberingPlanRanges(objNumberingPlan).Tables[0]; 
      grdNumberPlan.Visible = true; 
      rowNumPlanSum.Visible = true; 
      grdNumberPlan.DataSource = dt; 
      grdNumberPlan.DataBind(); 

      ///Fill NDC dropdown list 
      /// 
      NDC objNDC = new NDC(); 
      objNDC.HLRID = Convert.ToInt32(ddlHLR.SelectedValue); 
      objNDC.CityID = Convert.ToInt32(ddlCity.SelectedValue); 
      objNDC.Operation_Type = OperationType.Get; 

      DataTable dtNDC = new DataTable(); 
      serviceClient = new CommonServiceClient(); 
      dtNDC = serviceClient.GetNDC(objNDC).Tables[0]; 
      //GlobalMethods.FillDropDownList(dtNDC, ddlNDC, "NDC", "NDC_ID"); 
      GlobalMethods.FillDropDownList(dtNDC, ddlNDC, "NDC", "NDC"); 

      ClientScript.RegisterStartupScript(GetType(), "Javascript", "javascript:fnPopUp();", true); 

     } 
     catch (Exception ex) 
     { 
      ((UIMaster)Page.Master).SetMessage(MessageType.Error, ex.Message); 
     } 
    } 
+2

почему бы не сделать это в document.ready функции? – mybirthname

+0

также не работает оттуда – Mohsin

+0

alert ('hello'); не работает в документе. Уже? – mybirthname

ответ

2
$(document).ready(function(){ 
    callYourFunction(); 
}); 

или Вызов JavaScript Funtion из коде, после того, как GridView связывают

grdNumberPlan.DataSource=yourDataTable; 
grdNumberPlan.DataBind(); 
ClientScript.RegisterStartupScript(GetType(), "Javascript", "javascript:FUNCTIONNAME(); ", true); 
+0

не работает я уже пробовал, что – Mohsin

+0

любая ошибка в консоли ?? –

+0

нет ошибки в консоли – Mohsin

1

У меня недостаточно репутации для комментариев. Поэтому я отправляю новый ответ. В коде RegisterStartupScript удалите «javascript:» и попробуйте поместить инструкцию оповещения.

ClientScript.RegisterStartupScript(GetType(), "Javascript", "functionName(); ", true); 

или

ClientScript.RegisterStartupScript(GetType(), "Javascript", "alert('In function'); ", true); 
Смежные вопросы