Dear all,
I have a question which is a little complicated. I want to refer  a runtime-created GridView Control through Javascript, But the GridView is placed in a PlaceHolder , the PlaceHolder is placed in a Panel . How can I use Javascript to refer to it? Thanks

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
       
           
               
                   
                       
                           


                               
                                   
                               
                           

                                        ??   
                                   
                                           

                      
                   
           
       

                         runat="server"
            Height="249px"
            Width="955px" BackColor="#FFFFC0">
               

                                  
               
               
               

               
              

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ C# Code Behind ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    /* *
     * method to init PurchaseRequisitionDApproved
     * */
    private void mb_fnInitPurchaseRequisitionDApproved(string strPR_IDP, string strPR_IDD, string strPR_IDS)
    {
        try
        {
            for (int i = 0; i < this.mb_objDataSet.Tables.Count; i++)
            {
                if (this.mb_objDataSet.Tables[i].TableName.CompareTo("tabPurchaseRequisitionDApproved") == 0)
                {
                    this.mb_objDataSet.Tables[i].Reset();
                } // end if (this.mb_objDataSet.Tables[i].TableName.CompareTo("tabPurchaseRequisitionDApproved") == 0)
            } // end for (int i = 0; i < this.mb_objDataSet.Tables.Count; i++)

            this.mb_objSqlCmdPurchaseRequisitionDApproved = new SqlCommand();
            this.mb_objSqlCmdPurchaseRequisitionDApproved.CommandType = CommandType.Text;
            this.mb_objSqlCmdPurchaseRequisitionDApproved.Connection = this.mb_objConn.pcon_sqlConnection;
            this.mb_objSqlCmdPurchaseRequisitionDApproved.CommandText = "select * from vwrPurchaseRequisitionDApproved " +
                "where " +
                "PR_IDP = '" + strPR_IDP + "' and " +
                "PR_IDD = '" + strPR_IDD + "' and " +
                "PR_IDS = '" + strPR_IDS + "'";

            this.mb_objSqlDaPurchaseRequisitionDApproved = new SqlDataAdapter(this.mb_objSqlCmdPurchaseRequisitionDApproved);
            this.mb_objSqlDaPurchaseRequisitionDApproved.Fill(this.mb_objDataSet, "tabPurchaseRequisitionDApproved");
        } // end try
        catch (Exception ex)
        {
            throw ex;
        } // end catch (Exception ex)
    } // end mb_fnInitPurchaseRequisitionDApproved()
    /* *
     * Method to bind PurchaseRequisitionDApproved to GridView
     * */
    private void mb_fnBindPurchaseRequisitionDApproved2GV(GridView gvGridView)
    {
        try
        {           
            gvGridView.DataSource = mb_objDataSet.Tables["tabPurchaseRequisitionDApproved"];
            gvGridView.DataBind();
        }
        catch (Exception ex)
        {
            throw ex;
        }
    } // end mb_fnBindPurchaseRequisitionDApproved2GV()

    protected void gvPurchaseRequisitionApproved_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {

            HyperLink hplHyperLink2 = (HyperLink)e.Row.FindControl("hplPopApproval");

            hplHyperLink2.Attributes.Add("onclick", "ShowMyModalPopup(" +
                "'" + gvPurchaseRequisitionApproved.DataKeys[e.Row.RowIndex].Values[0] + "', " +
                "'" + gvPurchaseRequisitionApproved.DataKeys[e.Row.RowIndex].Values[1] + "', " +
                "'" + gvPurchaseRequisitionApproved.DataKeys[e.Row.RowIndex].Values[2] + "'" +
                ")");

            Control tempControl = LoadControl("wucPurchaseRequisitionApproved.ascx");

            GridView gvClone = new GridView();
            phPlaceHolder.Controls.Add(tempControl);


            foreach (Control ctl in phPlaceHolder.Controls)
            {
                foreach (Control ctl1 in ctl.Controls)
                {
                    if (ctl1 is GridView)
                    {
                        gvClone = (GridView) ctl1;
                        gvClone.ID = gvPurchaseRequisitionApproved.DataKeys[e.Row.RowIndex].Values[0].ToString() +
                            gvPurchaseRequisitionApproved.DataKeys[e.Row.RowIndex].Values[1].ToString() +
                            gvPurchaseRequisitionApproved.DataKeys[e.Row.RowIndex].Values[2].ToString();
                     
                    }
                }

            } // end foreach (Control ctl in phPlaceHolder.Controls)


            mb_fnInitPurchaseRequisitionDApproved(gvPurchaseRequisitionApproved.DataKeys[e.Row.RowIndex].Values[0].ToString(),
                gvPurchaseRequisitionApproved.DataKeys[e.Row.RowIndex].Values[1].ToString(),
                gvPurchaseRequisitionApproved.DataKeys[e.Row.RowIndex].Values[2].ToString());
            mb_fnBindPurchaseRequisitionDApproved2GV(gvClone);

            gvClone.Style.Add("visibility", "hidden");
            // --------------------------------------------------------------------------------

        } // end if (e.Row.RowType == DataControlRowType.DataRow)
    }
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
%%%%%%%%%% JavaScript %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function ShowMyModalPopup(PR_IDP, PR_IDD, PR_IDS)
{

    var varPR_IDP = PR_IDP;
    var varPR_IDD = PR_IDD;
    var varPR_IDS = PR_IDS;

    var varPR_ID = PR_IDP + PR_IDD + PR_IDS; // this variable for concatnate GridViewID
       
    vista = (document.getElementById('pnlPopPRDApproved').style.visibility == 'hidden') ? 'visible' : 'hidden';
    document.getElementById('pnlPopPRDApproved').style.visibility = vista;

   // I want to refer RunTime created gridview here but how can I refer to runtime-created gridview that is within a Panel and within a PlaceHolder ??
    var varphPlaceHolder = document.all['phPlaceHolder'];
    varphPlaceHolder.varPR_ID.style.visibility = 'visible'; // something like this but this syntac doesn't work
    confirm(varphPlaceHolder.id);
       
    document.getElementById('hdfPR_IDP').value = varPR_IDP;   
    document.getElementById('hdfPR_IDD').value = varPR_IDD;   
    document.getElementById('hdfPR_IDS').value = varPR_IDS;   

    pos = getClick(event);
       
    document.getElementById('pnlPopPRDApproved').style.left = pos.x;
    document.getElementById('pnlPopPRDApproved').style.top = pos.y;   
   
}

 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Regards,

Man Pak Hong, Dave

my hotmail: [email protected]