在webform和popup之间交换数据(IFrame中的另一个webform)

时间:2015-06-04 03:44:44

标签: javascript c# jquery asp.net webforms

我有这个WebForm

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CorridaExecutadaCorridaCompleta.aspx.cs" Inherits="LightSwitchApplication.WebForms.CorridaExecutadaCorridaCompleta" MasterPageFile="~/mainPrincipal.Master" %>

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="aja" %>

<asp:Content ContentPlaceHolderID="contentLinks" runat="server" ID="contentLinks">
<link href="../bootstrap-3.2.0-dist/css/bootstrap.min.css" rel="stylesheet" />
<script src="../bootstrap-3.2.0-dist/js/bootstrap.min.js" type="text/javascript"></script>
<script src="../jquery/jquery-2.1.1.min.js"></script>

<asp:ScriptManager ID="ScriptManager" runat="server"></asp:ScriptManager>

</asp:Content>

<asp:Content ContentPlaceHolderID="contentBody" ID="contentBody" runat="server">

<asp:Panel ID="Panl1" runat="server" CssClass="Popup" align="center" Style="display: none">
    <iframe style="width: 850px; height: 500px;" id="irm1" src="EnderecoCorridaCorridaExecutadaCompleta.aspx?IdEnderecoCorrida=4201337" runat="server"></iframe>
    <br />
    <asp:Button ID="btnClose" runat="server" Text="Fechar" />
</asp:Panel>
<div class="container">
    <div class="row">
        <div class="col-sm-8">
            <asp:Label runat="server" ID="lblCorrida" Text="Corrida: "></asp:Label>
            <asp:DropDownList runat="server" ID="ddCorridas" Width="100%" DataTextField="NomeCompletoCorrida" DataValueField="Id"></asp:DropDownList>
        </div>
        <div class="col-sm-4">
            <asp:Button runat="server" ID="btnProcurar" Text="Procurar" class="btn btn-info btn-default" OnClick="btnProcurar_Click" />

        </div>
    </div>
    <hr />
    <div class="row">
        <asp:Repeater ID="repMovimentosCorridaExecutada" runat="server" OnItemDataBound="repMovimentosCorridaExecutada_ItemDataBound">
            <HeaderTemplate>
                <div class="col-sm-6">
                    <asp:Label runat="server" ID="lblNomeCorrida" Text="Nome da corrida: "></asp:Label>
                </div>
                <div class="col-sm-12">
                    <asp:TextBox runat="server" ID="txbNomeCorrida" Text='<%# NomeCorrida %>' Width="100%"></asp:TextBox>
                </div>
                <div class="col-sm-6">
                    <asp:Label runat="server" ID="lblMotorista" Text="Motorista: "></asp:Label>
                </div>
                <div class="col-sm-12">
                    <asp:TextBox runat="server" ID="txbMotorista" ReadOnly="true" Text='<%# NomeCompletoMotorista %> ' Width="100%"></asp:TextBox>
                </div>
                <tr>
                    <td colspan="6">
                        <hr />
                    </td>
                </tr>
            </HeaderTemplate>
            <ItemTemplate>
                <aja:ModalPopupExtender ID="mp1" runat="server" PopupControlID="Panl1" TargetControlID="btnAlterarOrigem"
                    CancelControlID="btnClose" BackgroundCssClass="Background">
                </aja:ModalPopupExtender>
                <div class="col-sm-4">
                    <div class="row">
                        <div class="col-sm-6">
                            <asp:Label runat="server" ID="lblTipoMovimentoCorridaExecutada" Text="Tipo de Movimento:"></asp:Label>
                        </div>
                        <div class="col-sm-12">
                            <asp:TextBox runat="server" ID="txbTipoMovimentoCorridaExecutada" Text='<%# Eval("NomeTipoMovimentoCorrida")%>' Width="100%"></asp:TextBox>
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-sm-6">
                            <asp:Label runat="server" ID="lblEnderecoCompleto" Text="Endereço completo:"></asp:Label>
                        </div>
                        <div class="col-sm-12">
                            <asp:TextBox runat="server" ID="txbEnderecoOrigem" Text='<%# Eval("EnderecoOrigemCompleto")%>' Width="100%" ></asp:TextBox>
                            <asp:Button runat="server" ID="btnAlterarOrigem" Text="Alterar" CssClass="btn btn-default btn-info" OnClick="btnAlterarOrigem_Click" />
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-sm-6">
                            <asp:Label runat="server" ID="lblEnderecoDestino" Text="Endereço completo:"></asp:Label>
                        </div>
                        <div class="col-sm-12">
                            <asp:TextBox runat="server" ID="txbEnderecoDestino" Text='<%# Eval("EnderecoOrigemCompleto")%>' Width="100%"></asp:TextBox>
                            <asp:Button runat="server" ID="btnAlterarDestino" Text="Alterar" CssClass="btn btn-default btn-info"/>
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-sm-6">
                            <asp:Label runat="server" ID="lblDistanciaOrigemDestino" Text="Distância em KM:"></asp:Label>
                        </div>
                        <div class="col-sm-12">
                            <asp:TextBox runat="server" ID="txbDistanciaOrigemDestino" Text='<%# Eval("DistanciaOrigemDestino")%>' Width="100%"></asp:TextBox>
                        </div>
                    </div>
                    <div class="row">
                        <div class="col-sm-6">
                            <asp:Label runat="server" ID="lblTempoOrigemDestino" Text="Tempo em Mins."></asp:Label>
                        </div>
                        <div class="col-sm-12">
                            <asp:TextBox runat="server" ID="txbTempoOrigemDestino" Text='<%# Eval("TempoOrigemDestino")%>' Width="100%"></asp:TextBox>
                        </div>
                    </div>
                </div>
            </ItemTemplate>
        </asp:Repeater>
    </div>
</div>

和第二个webform(以弹出方式打开的那个)

 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="EnderecoCorridaCorridaExecutadaCompleta.aspx.cs" Inherits="LightSwitchApplication.WebForms.EnderecoCorridaCorridaExecutadaCompleta" MasterPageFile="~/mainPrincipal.Master" %>

 <asp:Content ContentPlaceHolderID="contentBody" runat="server">
<asp:SqlDataSource runat="server" ID="sqlDataSourceEnderecoCorrida" ConnectionString="<%$ ConnectionStrings:SOSSemTempoData %>" ConflictDetection="CompareAllValues" DeleteCommand="DELETE FROM [EnderecoCorrida] WHERE [Id] = @original_Id AND [Logradouro] = @original_Logradouro AND [Numero] = @original_Numero AND [Bairro] = @original_Bairro AND (([CEP] = @original_CEP) OR ([CEP] IS NULL AND @original_CEP IS NULL)) AND [IdCidade] = @original_IdCidade AND (([IdVia] = @original_IdVia) OR ([IdVia] IS NULL AND @original_IdVia IS NULL)) AND (([Complemento] = @original_Complemento) OR ([Complemento] IS NULL AND @original_Complemento IS NULL)) AND (([EnderecoCompleto] = @original_EnderecoCompleto) OR ([EnderecoCompleto] IS NULL AND @original_EnderecoCompleto IS NULL))" InsertCommand="INSERT INTO [EnderecoCorrida] ([Logradouro], [Numero], [Bairro], [CEP], [IdCidade], [IdVia], [Complemento], [EnderecoCompleto]) VALUES (@Logradouro, @Numero, @Bairro, @CEP, @IdCidade, @IdVia, @Complemento, @EnderecoCompleto)" OldValuesParameterFormatString="original_{0}" ProviderName="System.Data.SqlClient" SelectCommand="SELECT [Id], [Logradouro], [Numero], [Bairro], [CEP], [IdCidade], [IdVia], [Complemento], [EnderecoCompleto] FROM [EnderecoCorrida] WHERE ([Id] = @Id)" UpdateCommand="UPDATE [EnderecoCorrida] SET [Logradouro] = @Logradouro, [Numero] = @Numero, [Bairro] = @Bairro, [CEP] = @CEP, [IdCidade] = @IdCidade, [IdVia] = @IdVia, [Complemento] = @Complemento, [EnderecoCompleto] = @EnderecoCompleto WHERE [Id] = @original_Id AND [Logradouro] = @original_Logradouro AND [Numero] = @original_Numero AND [Bairro] = @original_Bairro AND (([CEP] = @original_CEP) OR ([CEP] IS NULL AND @original_CEP IS NULL)) AND [IdCidade] = @original_IdCidade AND (([IdVia] = @original_IdVia) OR ([IdVia] IS NULL AND @original_IdVia IS NULL)) AND (([Complemento] = @original_Complemento) OR ([Complemento] IS NULL AND @original_Complemento IS NULL)) AND (([EnderecoCompleto] = @original_EnderecoCompleto) OR ([EnderecoCompleto] IS NULL AND @original_EnderecoCompleto IS NULL))">
    <DeleteParameters>
        <asp:Parameter Name="original_Id" Type="Int32" />
        <asp:Parameter Name="original_Logradouro" Type="String" />
        <asp:Parameter Name="original_Numero" Type="Int32" />
        <asp:Parameter Name="original_Bairro" Type="String" />
        <asp:Parameter Name="original_CEP" Type="String" />
        <asp:Parameter Name="original_IdCidade" Type="Int32" />
        <asp:Parameter Name="original_IdVia" Type="Int32" />
        <asp:Parameter Name="original_Complemento" Type="String" />
        <asp:Parameter Name="original_EnderecoCompleto" Type="String" />
    </DeleteParameters>
    <InsertParameters>
        <asp:Parameter Name="Logradouro" Type="String" />
        <asp:Parameter Name="Numero" Type="Int32" />
        <asp:Parameter Name="Bairro" Type="String" />
        <asp:Parameter Name="CEP" Type="String" />
        <asp:Parameter Name="IdCidade" Type="Int32" />
        <asp:Parameter Name="IdVia" Type="Int32" />
        <asp:Parameter Name="Complemento" Type="String" />
        <asp:Parameter Name="EnderecoCompleto" Type="String" />
    </InsertParameters>
    <SelectParameters>
        <asp:QueryStringParameter Name="Id" QueryStringField="IdEnderecoCorrida" Type="Int32" />
    </SelectParameters>
    <UpdateParameters>
        <asp:Parameter Name="Logradouro" Type="String" />
        <asp:Parameter Name="Numero" Type="Int32" />
        <asp:Parameter Name="Bairro" Type="String" />
        <asp:Parameter Name="CEP" Type="String" />
        <asp:Parameter Name="IdCidade" Type="Int32" />
        <asp:Parameter Name="IdVia" Type="Int32" />
        <asp:Parameter Name="Complemento" Type="String" />
        <asp:Parameter Name="EnderecoCompleto" Type="String" />
        <asp:Parameter Name="original_Id" Type="Int32" />
        <asp:Parameter Name="original_Logradouro" Type="String" />
        <asp:Parameter Name="original_Numero" Type="Int32" />
        <asp:Parameter Name="original_Bairro" Type="String" />
        <asp:Parameter Name="original_CEP" Type="String" />
        <asp:Parameter Name="original_IdCidade" Type="Int32" />
        <asp:Parameter Name="original_IdVia" Type="Int32" />
        <asp:Parameter Name="original_Complemento" Type="String" />
        <asp:Parameter Name="original_EnderecoCompleto" Type="String" />
    </UpdateParameters>

</asp:SqlDataSource>
<asp:DetailsView runat="server" ID="dvEnderecoCorrida" DataSourceID="sqlDataSourceEnderecoCorrida">

</asp:DetailsView>

我的Repeater Control有几个项目,我需要在我的基本表单和我的Popup之间交换数据。显示弹出窗口的按钮是btnAlterarOrigem,每个ItemTemplate代表的每条记录都有一个ID。我需要发送弹出信息,ItemTemplate打开弹出窗口并显示一些数据。

我如何在他们之间交换信息?

0 个答案:

没有答案