简体   繁体   English

加载asp.net网格后调用Jquery函数

[英]Call Jquery function after asp.net grid is loaded

I want to call a jQuery function once the ASP.Net GridView is displayed. 我想在显示ASP.Net GridView后调用jQuery函数。 I have tried ready/load functions but none works for me. 我已经尝试过ready / load函数,但没有一个对我有用。

the grid is inside Update Panel 网格位于更新面板内

<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 code 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);
        }
    }
$(document).ready(function(){
   callYourFunction();
});

or call javascript funtion from codebehind, after gridview bind 或者在gridview bind之后从codebehind调用javascript函数

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

I do not have enough reputation to comment. 我没有足够的声誉来发表评论。 So I am posting as a new answer. 所以我发布了一个新答案。 In the RegisterStartupScript code, remove "javascript:" and try placing an alert statement. 在RegisterStartupScript代码中,删除“javascript:”并尝试发出警告声明。

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

or 要么

ClientScript.RegisterStartupScript(GetType(), "Javascript", "alert('In function'); ", true);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM