Comunidad de diseño web y desarrollo en internet online

Formularios Vs. "Atras"

Citar            
MensajeEscrito el 04 Dic 2006 12:19 pm
Hola! Tengo un formulario, y en él aparece un enlace que lleva a las condiciones de uso de la web, con "target=_self". Hasta aqui todo bien. El caso, es que en las condicioes de uso tengo el tipico "Volver atras", asi:

javascript:history.go(-1)


Y sí, me lleva atrás, pero, cuando aparece le formulario, aparecen todos los campos en blanco (aunque lo haya completado antes de ver las condiociones de uso). Esto pasa con IE con el firefox no. Alguna sugerencia para que cuando vuelva atras, los campos aparezcan completos? :shock:

Muchas gracias.

Por Prometeo2006

122 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Dic 2006 02:30 pm
¿Por qué quieres hacer algo como eso? Por la forma en cómo lo cuentas no me parece muy útil, pero si contaras que es lo que haces y para que quieres eso quizás sea más fácil darte una alternativa. Saludos.

Por NEO_JP

BOFH

5724 de clabLevel

13 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Premio_Secretos Team Cristalab

Front-end Developer en Washington, DC

firefox
Citar            
MensajeEscrito el 04 Dic 2006 02:37 pm
Hola! Antes de nada, gracias por responder. Verás, tengo un formulario, con varios campos para introducir texto. Al final del formulario hay un enlace a un apágina, que se abre en la misma del formulario. Cuando pulsamos el enlace, en la página un enlace "Volver atrás": javascript:history.go(-1)

El caso es que cuando vuelvo al formulario, ñeste aparece en blanco, es decir, los campos de texto estan vacios (suponiendo que lo hayamos rellenados). Como hacer para que cuando vuelva al formulario sigan los datos en él? Es decir, que no se borren los datos que ya teníamos escritos.

Sludos y gracias de nuevo.

Por Prometeo2006

122 de clabLevel



 

firefox
Citar            
MensajeEscrito el 04 Dic 2006 03:19 pm
Concuerdo con Neo, no tiene caso lo que estas haciendo, o al menos no suena logico.

Lo que podrías hacer para solucionar eso, podría ser guardar los datos mediante php, y rellenarlos cada que ingreses a esa pagina, claro si es la primera ocación, entrarian en blanco.

La otra sería, si es forzoso utilizar esa pagina que das atras, mejor metela en un div y mediante ajax utilizala, así no tienes que regresar ni mover los datos del formulario.

Por Reymond

Claber

1111 de clabLevel

5 tutoriales
1 articulo

Genero:Masculino  

Mobile developer

firefox
Citar            
MensajeEscrito el 04 Dic 2006 03:25 pm
Pues que raro, estoy viendo el mismo tema, al probar en un form que envia a un php y alli al hacer clic en history.back , me regresa a la pagina con los datos ingresados :P

Una solucion sería, se me ocurre, guardar esos datos en cajas de textos ocultos, y cuando regreses se cargen estos con un body onload, uhmmm........., aunque porque pones tus "condiciones de uso" en la misma pagina, creo que te complicas demasiado, sería mas facil si lo mandas con un target="_blank" o en un popup por ultimo

Por Max

Claber

267 de clabLevel



Genero:Masculino  

Lima - Peru

firefox
Citar            
MensajeEscrito el 04 Dic 2006 05:14 pm
en lugar de

Código :

javascript:history.go(-1) 

usa

Código :

javascript:history.back()

Yo usaria un pop up :) (solo en tu caso)

chug0

Por chug0

Claber

136 de clabLevel



 

Perú

firefox
Citar            
MensajeEscrito el 04 Dic 2006 05:21 pm
claro, el hoistory.back() es un metodo ya establecido para hacer el regreso a una pagina anterior, aun que concuerdo con lo dicho antes, abre en otra ventana, pro cierto, hasta donde tengo entendido el _blank _self y todos esos ya no es muy recomendable usarlo, depende de la vercion de html que usas, pero en xhtml para nada, otra cosa, por que usas _self, no se supone es el valor por defecto del targer??? bueno de cualquier modo toma mi comentario como ovio...

Por buzu

163 de clabLevel



 

Los Angeles, California

firefox
Citar            
MensajeEscrito el 04 Dic 2006 09:29 pm
Prometeo2006, efectivamente eso que comentas solo funciona en FF pero es muy útil, yo si le veo caso. Mira en IE juega con los eventos onblur y onfocus, creo que con eso. Te platico la idea.

Código :

function onblur(){
  //invocaFuncionGuardaValores
}
function onfocus(){
  //FuncionLeeValores
}


saludos

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 04 Dic 2006 10:11 pm

buzu escribió:

claro, el hoistory.back() es un metodo ya establecido para hacer el regreso a una pagina anterior, aun que concuerdo con lo dicho antes, abre en otra ventana, pro cierto, hasta donde tengo entendido el _blank _self y todos esos ya no es muy recomendable usarlo, depende de la vercion de html que usas, pero en xhtml para nada, otra cosa, por que usas _self, no se supone es el valor por defecto del targer??? bueno de cualquier modo toma mi comentario como ovio...

:roll: ortografia..
El target blank no esta permitido cuando tu codificacion es strict, mas no asi con transitional, asi que si lo quieres usar tienes que usar el transitional

Por Max

Claber

267 de clabLevel



Genero:Masculino  

Lima - Peru

firefox
Citar            
MensajeEscrito el 05 Dic 2006 01:40 am
Hmm.. pues con todo eso yo lo abriria en otra página, popup o en un div con ajax. Pero.. que clase de página es que tienes que ponerla en el formulario y te obliga a ir a ella?

Por NEO_JP

BOFH

5724 de clabLevel

13 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Premio_Secretos Team Cristalab

Front-end Developer en Washington, DC

firefox
Citar            
MensajeEscrito el 05 Dic 2006 02:33 am
Sip, eso que propones es "antes de" avanzar y me parece muy bien; partes de la idea: "en el formulario no pongas un link que te saque de este, en su defecto usa un pop up(en lo que quieras AJAX, Explorador, etc), pero no saques al usuario del formulario". Pero Neo, pensando en los casos en que el usuario(el que esta llenando el formulario), por error avanza a otra página y quiere regresar usando el botón atrás(o un history.back()), en IE sencillamente tiene que volver a escribir todo. Imagina un formulario de 30 campos.

Yo, es ahí donde le veo la utilidad. :wink:

Vamos tu recomendación, es tratar de evitar "eso" de que se vaya, no darle links para que avanza y luego regrese. Pero en caso de que por cualquier situación no prevista avance y tenga que regresar, es ahí la practicidad de la solución.

^^

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

clabbrowser
Citar            
MensajeEscrito el 05 Dic 2006 10:53 pm
Hola

Creo q la mejor solucion es hacer una pagina intermediaria entre la del formualrio y la siguiente, haces un submit del form a un php, este lo guarda en $_SESSION y luego te redirige a la pag q quieras, si luego volves para atras solo tenes q revisar q si $_SESSION tiene algun dato (recorda q cada vez q muestres el form, en las ultimas lineas, borrar las variables q hayas creada en $_SESSION asi no joden en el futuro)

saludos!

Por alfathenus

833 de clabLevel

5 tutoriales

 

buenos aires || Argentina

firefox
Citar            
MensajeEscrito el 06 Dic 2006 04:03 am
Te entiendo muy bien Dano, y si pensé en IE ya que he estado trabajando en un CMS y IE suele resetear el formulario (a la mala).

Una idea que se me ocurre es guardar la información en cookies al muy estilo "draft" o borrador. Ahorrando así el tiempo de carga del servidor si es que se usan $_SESSION, y en parte sería más rápido, el único problema es que no funcionaría si el usuario tiene el javascript desactivado; aunque no me parece tan problematico ya que el history.back() también es JS.

Saludos.

Por NEO_JP

BOFH

5724 de clabLevel

13 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Premio_Secretos Team Cristalab

Front-end Developer en Washington, DC

firefox
Citar            
MensajeEscrito el 06 Dic 2006 02:29 pm
Prometeo2006, seria bueno si nos dijeras como solucionaste tu problema o cual sugerencia se ajusto mas a tus necesidades. :)

Por chug0

Claber

136 de clabLevel



 

Perú

firefox
Citar            
MensajeEscrito el 06 Dic 2006 05:06 pm
bueno, no importa igual si esta activado el js puedes desactivar la cookies independientemente, asi sigues navegando con js y el histori.back() funciona, pero no aceptas cookies, ademas no creo que sea una buena idea la de usar cookies, si navegas en sitio publico te arriesgas a que alguien saque tu info... claro son casos muy raro, pero podrian pasar, ademas depende del tipo de infomracion que solicita el formulario, podria ser informacion confidencial...

Por buzu

163 de clabLevel



 

Los Angeles, California

firefox
Citar            
MensajeEscrito el 06 Dic 2006 06:04 pm
justamente por ese motivo la navegacion no debe basarse en js... asi no queda ningun usuario sin poder utilizar la web....

Por alfathenus

833 de clabLevel

5 tutoriales

 

buenos aires || Argentina

firefox
Citar            
MensajeEscrito el 07 Dic 2006 03:56 pm

alfathenus escribió:

justamente por ese motivo la navegacion no debe basarse en js... asi no queda ningun usuario sin poder utilizar la web....

La mejor respuesta sobre el tema hasta ahora. Saludos.

Por NEO_JP

BOFH

5724 de clabLevel

13 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Premio_Secretos Team Cristalab

Front-end Developer en Washington, DC

firefox
Citar            
MensajeEscrito el 08 Dic 2006 03:53 pm

alfathenus escribió:

justamente por ese motivo la navegacion no debe basarse en js... asi no queda ningun usuario sin poder utilizar la web....


Eso era bueno hace unos 5 años, HOY una navegación por JS tiene muchas bondades que la navegación tradicional no tiene. Debemos evolucionar, a veces quedarnos con paradigmas de años atrás, es una barrera que no nos permite inovar.

OJO no estoy diciendo, que el que no tenga JavaScript se jode. Basicamente agregas una alternativa similar a esta, en tu página inicial:

Código :

<noscript>
   <META http-equiv="refresh" content="0; 
    URL=http://www.tusitio.com/navegaSINJavaScript.html">
</noscript>

Así, el que tiene JavaScript disfruta de tu poderosa navegación en JS, y el que no tiene habilitado el JS, aun así puede navegar en tu sitio.

:wink:

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 08 Dic 2006 06:07 pm
Claro la idea es q el javascript sea un plus no la razon de ser de una web. Sobre todo para no olvidarse de la accesibilidad para la gente con algun tipo de problema, sobre todo en webs de acceso masivo o de organismos.

Saludos!

Por alfathenus

833 de clabLevel

5 tutoriales

 

buenos aires || Argentina

firefox
Citar            
MensajeEscrito el 08 Dic 2006 07:46 pm
Eso era bueno hace unos 5 años, HOY una navegación por JS tiene muchas bondades que la navegación tradicional no tiene. Debemos evolucionar, a veces quedarnos con paradigmas de años atrás, es una barrera que no nos permite inovar.

Hay que no concuerdo contigo Dano, una navegación tiene que ser si o si con xml (xhtml) para que pueda ser indexada, englobada, marketeada y vista por cualquier navegador existente (incluyen lectores de pantalla y celulares). Que usen javascript o que no usen javascript es otro tema.

De forma ideal, el javascript deberia ser introducido de modo "no intrusivo", brindando todos los efectos y "bondades" que la navegación tradicional no posee, dandole más interactividad al sitio web. De este modo si el usuario no posee javascript simplemente ve la navegación sin efectos, ni animación, ni las "bondades" que javascript nos da, pero sigue funcionando y sigue cumpliendo su fin, enlazar y llevarnos a otras páginas.

No digo que javascript es malo, es más ahora casi lo uso para todo. Pero por usar javascript, no voy a dejar al resto de usuarios en un vacío donde no puedan acceder a ninguna página. Y eso me haría responsable de dicho problema.

Una divertida discusión. Saludos.

Por NEO_JP

BOFH

5724 de clabLevel

13 tutoriales
12 articulos

Genero:Masculino   Anime Bloggers Premio_Secretos Team Cristalab

Front-end Developer en Washington, DC

firefox
Citar            
MensajeEscrito el 08 Dic 2006 08:15 pm
Pero por usar javascript, no voy a dejar al resto de usuarios en un vacío donde no puedan acceder a ninguna página


Sip, tienes razón Neo. Traté de explicar, que cuando la navegación de un módulo concreto, dependiera de JS, ofreciaras una alternativa.

Precisamente es a lo que me referia en esta parte:
OJO no estoy diciendo, que el que no tenga JavaScript se jode. Basicamente agregas una alternativa similar a esta, en tu página inicial:


Es que cuando se tenga una sección especial, por ejemplo un listado de productos, y este listado lo muestres con AJAX. Cuando un usuario accese y no tenga Javascript, no podrá hacer funcionar tu listado en AJAX, pero puedes mostrarle una alternativa en html y paginación tradicional.

Pero resumiendo, para no crear confusión, yo me exprese de forma erronea(una disculpa).

Lo ideal podría ser, como dice NEO: "TODA la navegación realizala en xHTML" y yo además añadiría, "si tienes un módulo complejo, que requiera Javascript, diseñalo, pero ofrece a tus usuarios, un módulo similar en html, para los que no tengan activo el JS"

saludos ^^

Por Dano

BOFH

4273 de clabLevel

14 tutoriales
4 articulos
10 ejemplos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Lugar estratégico para vigilarte

firefox
Citar            
MensajeEscrito el 11 Dic 2006 10:04 pm
buena tema este che

Hace un tiempito he visto un carrito de tompra hecho con js, en el cual para agregar prodictos habia q arrastrarlos hasta una zona de la pantalla, la verdad el efecto quedaba barbaro. Pero desactive el js y ya nada funcionaba!! uff q garron, si queria ver esa web desde un celular (de los q tienen navegadores xhtml) no funcionaria ni de casualidad.

La solucion a eso no es hacer una web aparte sin js... sino simplemente agregar un botoncito q diga "agregar" y listo refresca la pantalla y ya ta, practicamente son 10 lineas de codigo mas (si es q esta bien modularizado el codigo claro esta)

Creo q ese ejemplo resume bastante bien los diferentes comentarios no? :wink:

saludos!

Por alfathenus

833 de clabLevel

5 tutoriales

 

buenos aires || Argentina

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.