• Lunes 23 de Diciembre de 2024, 01:29

Autor Tema:  Como Hacer Un Submit Al Formulario  (Leído 2320 veces)

mustang

  • Miembro MUY activo
  • ***
  • Mensajes: 133
    • Ver Perfil
Como Hacer Un Submit Al Formulario
« en: Lunes 21 de Noviembre de 2005, 15:46 »
0
Hola a todos de nuevo akí molestando otra vez, lo ke pasa es ke en el programa ke estoy haciendo cuando se muestran los registros de una consulta, hay un campo llamado 'responsable' ke si se encuentra vacio mustra una liga para llenarlo de este modo:
Citar
Response.Write("<a href='#' onClick='window.open('selresp.aspx?nomcomenta=" & dsTic2.tic2(indi).nombre.ToString','myWin', 'toolbar=no, directories=no, location=no, status=no, menubar=no,resizable=no, scrollbars=no, width=900, height=700')'>Seleccione responsable</a>")
esto me abre la página selresp.aspx con el nombre del registro para actualizarlo, en la ventana ke me abre, cacho en el query.string el nombre para tenerlo como referencia al actualizar el registro. Una vez que le den al botón Aceptar de la ventana hija, debo cerrar esta ventana y hacer un 'submit' en la ventana padre, ke es la ke muestra los registros para ke se vea reflejado el cambio ke se acaba de hacer, tengo en el botón de la ventana hija este código:
Citar
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Dim respon As String
        Dim actualiza As Odbc.OdbcDataReader
        respon = Trim(rblResp.SelectedValue.ToString)
        lblNombre.Text = Request.QueryString("nomcomenta")

        OdbcSelectCommand1.CommandText = "update tic2 set respon='" & respon.ToString & "' where nombre='" & lblNombre.Text"
        OdbcConnection1.Open()
        actualiza = OdbcSelectCommand1.ExecuteReader
        OdbcConnection1.Close()

        Dim strScript As String
        strScript = "<script language=javascript>"
        strScript = strScript & "window.opener.document.forms['Form1'].submit();"
        strScript = strScript & "window.close();"
        strScript = strScript & "</script>"
        Page.RegisterStartupScript("ClientScript", strScript)
    End Sub
me hace la actualización y me cierra la ventana pero no puedo hacer el submit de la ventana padre.
Se supone que con el 'window.opener.document.forms['Form1'].submit();' me haría un submit de la forma padre, pero no hace nada mas que algo asi como un refresh, y no me muestra los datos ke salen al hacer submit de la forma....
alguien sabría una solución???  :comp:
de antemano muchas gracias a todos por el tiempo ke les llevo leer esto!!
hasta pronto...  :hola:
El camino del exceso lleva al palacio de la sabiduria.....(William Blake)

IGarcia

  • Miembro activo
  • **
  • Mensajes: 31
    • Ver Perfil
Re: Como Hacer Un Submit Al Formulario
« Respuesta #1 en: Lunes 21 de Noviembre de 2005, 19:38 »
0
Hola mustang:

Lo que en realidad estas haciendo es simplemente cerrar la ventana hija. Luego, carga de nuevo el Page_Load de la padre por lo que en la ventana padre, debes tener DataGrid1.DataBind() si es un datagrid o la select si es una consulta normal, o lo que sea.  Pero la clave esta en el page_load de la ventana padre.

Pruebalo y ya me dirás si te funciona.

mustang

  • Miembro MUY activo
  • ***
  • Mensajes: 133
    • Ver Perfil
Re: Como Hacer Un Submit Al Formulario
« Respuesta #2 en: Lunes 21 de Noviembre de 2005, 21:31 »
0
Cita de: "IGarcia"
Hola mustang:

Lo que en realidad estas haciendo es simplemente cerrar la ventana hija. Luego, carga de nuevo el Page_Load de la padre por lo que en la ventana padre, debes tener DataGrid1.DataBind() si es un datagrid o la select si es una consulta normal, o lo que sea.  Pero la clave esta en el page_load de la ventana padre.

Pruebalo y ya me dirás si te funciona.
Hola, si tienes razon tuve ke poner todo el codigo ke ejecuto en el boton en el page_load, es algo ke no keria hacer porke si es algo de codigo, pero tu solucion me ha servido muy bien, asi como tu dices es como lo solucione!!!
Muchas gracias!!   :lol:
Hasta pronto!!!    :hola:
El camino del exceso lleva al palacio de la sabiduria.....(William Blake)