Hola.
Estoy haciendo un formulario de registro para una página donde uno puede hacer reservas para alquilar canchas de tenis.
Yo tengo varios <div>
donde voy mostrando qué canchas y en qué horarios están disponibles. Yo quiero que cuando complete un formulario ese <div>
se oculte, así no lo muestra la página.
Lo estoy haciendo pero al refrescar la pagina se vuelve a mostrar. ¿Qué sugerencias me pueden dar para que el <div>
permanezca oculto permanentemente?
Estoy usando la clase hide
de Bootstrap con un JavaScript.
Saludos
Respuestas
Para ocultar el <div>
permanentemente, la "única" solución sería cambiar la aplicación para que desde el servidor no se incluya ese <div>
en la página que se envía al servidor.
Si no puedes cambiar eso, la "única" solución sería guardar en el navegador la información necesaria para ocultar ese <div>
siempre que el usuario visite la página. La forma tradicional de hacerlo sería crear una cookie. La forma nueva sería usar el "local storage" que es una característica de los navegadores que permiten a los sitios web guardar información en el navegador.
Tendrías que usar JavaScript y el código sería algo así. Cuando se complete el formulario, guardas una variable llamada estadoDelDiv
(deberías usar un nombre mejor):
localStorage.setItem('estadoDelDiv', 'oculto');
Después, al cargar la página, compruebas este valor para saber si tienes que mostrar el <div>
o no:
if (localStorage.getItem('estadoDelDiv') == 'oculto') { // ocultar el div }
@javiereguiluz
La idea es que cambie dinamicamente. Cuando envia el formulario que tal div se oculte asi la cancha no esta disponible ya despues de que pase la fecha donde se juega, el div deberia aparecer. La de local storage la pense pero a lo mejor habia algo mas sencillo ya que el usario va a estar registrado y lo mejor desde la base de datos se podia ocultar.
@jonatancaudo
Si el usuario está registrado y puedes hacer cualquier cambio en la parte del servidor, entonces la solución puede ser sencilla. No se cómo generas el código HTML, pero si usas un motor de plantillas, entonces seguro que tienes la opción de mostrar/ocultar contenidos según unas condiciones.
Si por ejemplo usas PHP y Twig, sería algo así:
{% if cacha.disponible %} <div> ... </div> {% else %} <div>La cancha no está disponible en la fecha seleccionada</div> {% endif %}
En cualquier caso, si el formulario es muy dinámico, quizás es mejor hacerlo en JavaScript, donde ocultar/mostrar cosas va a ser instantáneo.
@javiereguiluz
Yo prefiero hacerlo con javascript pero no logre hacerlo, hago un script pero al refrescar la pagina se me actualiza. Si pude hacerlo al revés, que estén campos ocultos e ir mostrándolos.
@jonatancaudo
Hay gente testaruda en la vida :v
@cristian_angulo
Si como vos Cristian Angulo que te sacas fotos como un adolecenste tomando cerveza, date cuenta que con esa panza no podes, queda mal ...
@jonatancaudo
Por favor respetémonos entre nosotros. Se puede decir cualquier cosa sin recurrir a los insultos. Gracias.
@javiereguiluz
Jajajajajaa perdón @javiereguiluz. De toda la gente que necesitamos ayuda, este sí es un pendejazo... :D Vaya y llore con su madrecita :v
@cristian_angulo
Vos necesitas ayuda Cristian, te viste la panza que tenes? Y ni hablar de tu mujer por favor ...
@jonatancaudo
Jajajaja ¿A usted con esa cara sí se le arriba una mujer? :v Mamáaaaaa, me están molestando... :v
@cristian_angulo