Hien Nguyen Ответов: 0

Стоимость перевала из всплывающего на родительские страницы главная страница


Hi all,

I am trying that following on : 

https://www.aspsnippets.com/Articles/Pass-value-from-child-popup-window-to-parent-page-window-using-JavaScript.aspx

And it work fine.

But when using parent page had master page.

Javascrip error, can not get value.

 window.opener.document.getElementById("lblConfirm_Email").value = UserEmail;

lblConfirm_Email is textbox on Parent page
Popup use Gridview -> click row -> pass value to parent page.

So pls kindly help fix that.

Thanks so much

Nguyen Hien

What I have tried:

<pre lang="HTML">
<pre>function GetSelectedRow(lnk) {  
                if (window.opener != null && !window.opener.closed) {
                    var row = lnk.parentNode.parentNode;
                    var rowIndex = row.rowIndex - 1;
                    var UserEmail = row.cells[3].innerHTML;
                    var UserName = row.cells[2].innerHTML;
                    var parent_ID = getQueryVariable("ParentID");
                    //var Email1 = lblAppr_Email.ClientID.toString();
                    //var Name1 = lblAppr_Name.ClientID.toString();
                    if (parent_ID == "Appr") {
                        window.opener.document.getElementById("lblAppr_Name").value = UserName;
                        window.opener.document.getElementById("lblAppr_Email").value = UserEmail;
                    }



<pre> <form id="form1" runat="server">
        <div id="Grid" style="overflow:auto;">
            <asp:GridView ID="GridView1"  runat="server" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3" OnRowCreated="RowCreated_report" OnRowDataBound = "OnRowDataBound"   >
                
                <FooterStyle BackColor="White" ForeColor="#000066" />
                <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
                <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
                <RowStyle ForeColor="#000066" />
                <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
                <SortedAscendingCellStyle BackColor="#F1F1F1" />
                <SortedAscendingHeaderStyle BackColor="#007DBB" />
                <SortedDescendingCellStyle BackColor="#CAC9C9" />
                <SortedDescendingHeaderStyle BackColor="#00547E" />
                <Columns>
                    <asp:TemplateField HeaderText="">
                        <ItemTemplate>
                            <asp:LinkButton ID="lnkSelect" runat="server" Text="Select" CommandName="Select" OnClientClick="return GetSelectedRow(this)"> </asp:LinkButton>
                           
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>
            <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>

        </div>
    </form>



И это метка на родительской странице(используйте главную страницу):
<pre><td class="auto-style4">
                        <asp:Label ID="lbappr" runat="server"></asp:Label>
                        <input  type="hidden" id="lblAppr_Email" runat="server" readonly="readonly" />
                        <input id="lblAppr_Name" type="text" readonly="readonly" runat="server"  />
                        <br />
                        <%--<asp:Button ID="Button4" runat="server" Text="Change" />--%>
                         <input type="button" value="Change" onclick="SelectDetails_appr()" />
                    </td>

j snooze

В этом есть смысл. Из того, что код опубликован, я не вижу html-элемента управления или любого другого элемента управления с именем lblConfirm_Email на родительской странице html, которую вы опубликовали.

j snooze

Также имейте в виду, если эта метка является asp.net Контрольная метка, иногда на главной/дочерней страницах asp.net изменяет идентификатор, чтобы убедиться, что они уникальны между страницами, при просмотре вашей страницы в браузере сделайте правый клик > просмотр источника в браузере и найдите метку lblConfirm_Email в фактическом HTML, который asp.net выходы, метка может быть переименована с дополнительными символами, чтобы сделать ее уникальной, чтобы главная и подробная страницы не сталкивались с проблемами.

0 Ответов