none
Enviar parametros desde hiperlink por url RRS feed

  • Pregunta

  • Hola, tengo un problema, espero me puedan colaborar, sucede lo siguiente, tengo dos gridView, en el primero cargo una tabla de la base de datos y un hiperlink que asocia un parametro para pasar por url, con los siguientes pasos.

    1.- editar columnas y NavigateUrl = ~/PaciReserva.aspx.

    2.- DateNavigateUrl y describo el campo "Medico, Especialidad"

    3.- DateNavigateUrlFormatString y lo describo así " ~/PaciReserva.aspx?Medico={0}&Especialidad={1} "

    y al hacer click se envia a la siguiente pagina sin problemas.

    Luego en esta página tengo otro GridView y hago los mismos pasos de la siguiente manera, pero con diferentes campos:

    1.- editar columnas y NavigateUrl = ~/ConfirmaHora.aspx.

    2.- DateNavigateUrl y describo el campo "Hora"

    3.- DateNavigateUrlFormatString y lo describo así " ~/ConfirmaHora.aspx?Hora={0}"

     el tema es que en el segundo GridView al enviar los valores e intentar recuperarlos no muestra nada es como si fueran valores vacios.

    hora = Request.QueryString["Hora"]; eso me entrega "";

    osea nada, y la dirección url no lleva el parametro solo ConfirmaHora.aspx y no ?hora={0}

    Saludos y gracias



    jueves, 7 de mayo de 2015 16:39

Todas las respuestas

  • hola

    pero cual es el problema ? segun parece todo funciona bien y los link redireccionan de forma correcta

    quizas sea el formato de la hora en el segundo link? para eso podrias aplicar formato

    ~/ConfirmaHora.aspx?Hora={0:HHmm}"

    aunque no se en realidad ese campo "Hora" de que tipo sera, imagine es un datetime

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 7 de mayo de 2015 17:03
  • Tiene razon mis disculpas, el tema es que en el segundo GridView al enviar los valores e intentar recuperarlos no muestra nada es como si fueran valores vacios.

    hora = Request.QueryString["Hora"]; eso me entrega "";

    osea nada, y la dirección url no lleva el parametro solo ConfirmaHora.aspx y no ?hora={0}

    Saludos y gracias

    jueves, 7 de mayo de 2015 17:33
  • hola

    la columna hora de que tipo es ? s un datetime

    intentaste poniendo formato al DateNavigateUrlFormatString como mencione la respuesta anterior ?

    la hora puede aparecer con espacio y caracteres que no queden bien en la url

    cuando presionas el link valida en el url del browser como se ve ese querystring de la hora

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    jueves, 7 de mayo de 2015 18:01
  • La columna es tipo String y probe dando el formato y nada aun...

    jueves, 7 de mayo de 2015 18:11
  • una hora como un string ? eso no es correcto

    imagino que no defines los ":", no? porque eso puede afectar a la url

    cuando presionas el link puede ver en el browser que url genera?

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 7 de mayo de 2015 18:30
  • En el browser no parace nada asi aparece http://localhost:2375/ConfirmaReserva.aspx, si no puedo enviar esa hora desde el browser como podria seleccionar una hora y enviarla ?? 

    asi es como lo tengo 

    hora                 estado                         fecha                 reservar

    08:00               Disponible                   29-05-2015       Click para reservar

    08:30               Reservado                   

    09:00               Disponible                   29-05-2015       Click para reservar

    09:30               Bloqueado                  

    el reservar es un hiperlink, como podría al hacer click en el hiperlink ("Click para reservar"), guardar la hora 09:00 o 08:00 en una variable o enviarla a otra web que es de confirmación?? hay es donde no me funciona ... intente enviar el estado  y tampoco lo envía ...

    Saludos Gracias

    jueves, 7 de mayo de 2015 18:38
  • hola

    porque debes seleccionar una hora para reservar? no deberias definir algun id o codigo de la entidad

    alli veo que defines el estado esta disponible imagino lo obtienes de algun lado y eso lo referencias mediante un Id, seria este el que debes pasar en la url

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    jueves, 7 de mayo de 2015 19:32
  • Si ovbio, pero eso tampoco funciona ... intento darle un parametro numerico y enviarlo pero sigue siendo una url vacia
    jueves, 7 de mayo de 2015 19:38
  • >>pero eso tampoco funciona

    pero entonces estas definiendo de forma incorrecta

    defines el DataNavigateUrlFields ? es alli donde debes poner el campo que usara el DateNavigateUrlFormatString

    no definas ningun NavigateUrl

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina


    jueves, 7 de mayo de 2015 19:47
  • No es bueno copiar y pegar, pero asi lo tengo:

                        

    <asp:HyperLinkField HeaderText="Reserva" 

                        NavigateUrl ="ConfirmaReserva.aspx"
                        DataNavigateUrlFields="Hora"
                        DataNavigateUrlFormatString="ConfirmaReserva.aspx?Hora={0}" DataTextField="Hora" >
                    <ControlStyle Font-Underline="False" ForeColor="Blue" />
                    </asp:HyperLinkField>

    Espero me ayude .. no se que hacer ... ajaja

    Saludos

    jueves, 7 de mayo de 2015 19:58
  • Ahora abra alguna posibilidad de guardar esta variable hora en una variable de session ??
    jueves, 7 de mayo de 2015 20:02
  • que pasa si quitas el NavigateUrl ?

    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 7 de mayo de 2015 20:33
  • hola

    >>abra alguna posibilidad de guardar esta variable hora en una variable de session ??

    si realizas un post al servidor con algun evento podrias poner la info en session y despues realizar el Redirect a la otra pagina

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 7 de mayo de 2015 20:34
  • Intente quitando el navegateUrl y nada, es más no se marca como hipervinculo ...

    como haria eso de hacer una post al servidor ??? para guardar la variable como variable de session??

     
    viernes, 8 de mayo de 2015 13:40