07/06/2009, 23:41
|
| | Fecha de Ingreso: junio-2009
Mensajes: 2
Antigüedad: 15 años, 7 meses Puntos: 0 | |
Respuesta: Opener no funciona con paginas heredadas del master page Aqui les va para C#, ojala les ayude por que a mi me a costado amanecidas ya me estaba arrepintiendo usar master Page, pero en fin aqui les va la solución cualquier cosa envieme su cuenta y les paso el codigo completo con paginas maestras y sin paginas maestras.
con Master Page:
Pagina Padre:
protected void cmdListaCliente_Click(object sender, EventArgs e)
{
AbreVentana("AyudaCliente.aspx");
}
private void AbreVentana(string ventana)
{
string Clientscript = "<script>window.open('" +
ventana +
"?id=" + txtID_CLIENTE.ClientID + "', 'childwindow' , 'width=500,height=340,scrollbars=1')</script>";
this.RegisterStartupScript("WOpen", Clientscript);
Pagina Hija:
protected void tblAyudaCliente_SelectedIndexChanged(object sender, EventArgs e)
{
// Selecciono la Linea utilizando la propiedad SelectedRow .
GridViewRow row = tblAyudaCliente.SelectedRow;
// Recupero el valor según su ubicación
String ID_CLIENTE = row.Cells[1].Text;
txtLocalizar.Text = ID_CLIENTE;
CerrarVentana(txtLocalizar.Text);
}
private void CerrarVentana(string valor)
{
string Clientscript = "<script language=javascript>window.opener.document.getElem entById('" + Convert.ToString(Request.QueryString["id"]) + "').value = '" + valor + "';self.close();</script>";
if (!this.IsStartupScriptRegistered("WClose"))
{
this.RegisterStartupScript("WClose", Clientscript);
}
}
sin Master Page:
Pagina Padre:
protected void cmdListaCliente_Click(object sender, EventArgs e)
{
AbreVentana("AyudaCliente.aspx");
}
private void AbreVentana(string ventana)
{
string Clientscript = "<script>var sValue = window.showModalDialog('" +
ventana +
"', 'SelectValueWindow','dialogWidth:600px; dialogHeight:340px; dialogLeft:100px;'); document.getElementById('txtID_CLIENTE').value = sValue; </script>";
if (!this.IsStartupScriptRegistered("WOpen"))
{
this.RegisterStartupScript("WOpen", Clientscript);
}
}
pagina Hija:
protected void tblAyudaCliente_SelectedIndexChanged(object sender, EventArgs e)
{
// Selecciono la Linea utilizando la propiedad SelectedRow .
GridViewRow row = tblAyudaCliente.SelectedRow;
// Recupero el valor según su ubicación
String ID_CLIENTE = row.Cells[1].Text;
txtLocalizar.Text = ID_CLIENTE;
CierraWindow(txtLocalizar.Text );
}
private void CierraWindow(string valor)
{
string Clientscript = "<script>window.returnValue = '" + valor + "'; window.close();</script>";
if (!this.IsStartupScriptRegistered("WClose"))
{
this.RegisterStartupScript("WClose", Clientscript);
}
}
/* Ojala les ayude favor cualquier cosa me pasan la voz para que no pasen lo que yo he pasado para encotrar esta solución, derrepente es rudimentaria esta solucion pero funciona a la perfeccion */
/* solo comuniquemen y les ayudo */ |