| |||
![]() alguien sabria como hacer para conseguir meter en una vble de session el valor de una caja de texto de un formulario antes de enviar el formulario? |
| |||
on submit.... a ver, q me he explicado mal, lo que kiero hacer es algo como esto (y creo q no voy muy desencaminada): <FORM METHOD=Post ACTION=todo2.asp target="_self" onsubmit=<%session("anios")=request.form("anio")*> *este request creo q esta mal pq si todavia no he enviado el form no sé pq me da que el request.form no tiene nada... <select name=anio > <option value="1990">1990</option> <option value="2000">2000</option> <option value="2001">2001</option> <option value="TODO">TODO</option> </select> <input type="submit" value="Aceptar" name="Submit" > </form> |
| |||
create una página intermedia en la cual recogas el valor de la caja de texto y lo guardes en la varible de sesion,una vez guardada haces un response.redirect a la direccion donde te apunta el formulario... recuerda que debes enviarle todas las variables del formulario...
__________________ ---Nuestra recompensa se encuentra en el esfuerzo y no en el resultado. Un esfuerzo total es una victoria completa.-- GHANDI |
| |||
Bueno, lo que quieres hacer es imposible, ya que necesitarías que desde javascript se pueda pasar a ASP, y eso no se puede, como te dije antes, es imposible. Lo de la página intermedia sería hacer lo mismo que si enviaras el formulario directamente a la página que lo procesa. Segundo, con Response.Redirect, no podrías hacerlo, ya que no guarda el valor de las variables que recoges en el formulario. Para hacer eso, en la página intermedia (que es en realidad, usando Response.Redirect, la que procesa el formulario) tendrías que guardar todas los valores del formulario en distintas sesiones para luego usarlas. Si en lugar de usar Response.Redirect usas Server.Transfer ahí si sería posible hacer lo que dice Motki, sin malgastar recursos utilizando sesiones. Y de esa forma la página a la que apunta el formulario sería realmente una página intermedia, y la página a la cual redirigis al usuario con Server.Transfer sería realmente la página que procesa los datos del formulario. Una pregunta, cual es el objetivo de lograr eso que estás buscando hacer? Saludos. Suerte!. |
| ||||
Bueno, pero le dijeron que antes recuperara esos campos, por lo cual me parece valido el comentario, aunque tambien tienes razon, lo de la pagina intermedia en realidad seria muy parecido a ejecutar un proceso antes de recoger los valores. Si aun asi lo quieres hacer medianet la pagina intermedia y un redirect, con un simple ciclo lo puedes lograr:
Código:
despues recogerias esos valores con querystring.For each item in request.form strCampos = strCampos & item & "=" & request.form(item) & "&" Next 'ejecutas el proceso que necesites aqui Response.Redirect todo2.asp&"?"&strCampos Salu2,
__________________ "El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera." -- Ernest Hemingway |
| ||||
Hola! No se si te entiendo bien, pero con lo que pones de codigo, dice que la misma pagina se llama asi misma y envia los años, entonces lo que tal vez necesitas es simplemente esto: pagina.asp <% anos = response.request("anos") if anos > "" then 'Haces lo que necesitas else %> <FORM METHOD=Post ACTION=todo2.asp target="_self"> <select name=anio > <option value="1990">1990</option> <option value="2000">2000</option> <option value="2001">2001</option> <option value="TODO">TODO</option> </select> <input type="submit" value="Aceptar" name="Submit" > </form> <% end if %> Pero la verdad no se realmente que intentas, por otra parte, si ya tienes un valor en session, no te preocupes por ponerlo en el formulario, puedes leerlo en la siguiente pagina directamente de session, lo cual al final de cuentas será mas facil. Suerte!! |
| ||||
Código:
claro, y después hacés:<% anos = response.request("anos") if anos > "" then 'Haces lo que necesitas else %> server.write(redirect.form(" ![]() ![]() ![]()
__________________ ...___... |