Actualización de página y botón de enviar

lifa5 Mensajes publicados 50 Estado Miembro -  
lifa5 Mensajes publicados 50 Estado Miembro -
```html <input type="submit" id="sub" value="Rechercher" style="float:right;" onclick="affiche(); return false;" /> ``` ```html <form id="formedit" method="post" class="aff" name="form2" action="modifier" style="display:none;"> <fieldset align="center"> <legend id="mod">Modification d'un utlisateur</legend> <input type="hidden" name="id" value="${user.id}" /> <label id="pre">Prenom:</label> <input type="text" name="prenom" value="${user.prenom}" />

<label id="pre">Nom: </label> <input type="text" name="nom" value="${user.nom}" />

<label id="pre">Email: </label> <input type="text" name="email" value="${user.email}" />

<label id="pre">Telephone: </label> <input type="text" name="tel" value="${user.tel}" />

<label id="pre">Password: </label> <input type="password" name="pwd" value="${user.password}" />
${sms} <input type="submit" value="Modifier" style="float:right;" /> </fieldset> </form> ``` ```javascript function affiche() { document.getElementById('formedit').style.display = 'block'; return false; } ```

9 respuestas

  1. jordane45 Mensajes publicados 30427 Fecha de registro   Estado Moderador Última intervención   4 832
     
    Hola,

    Mira del lado de
     e.preventDefault() 


    Por ejemplo:
     $("form").submit(function (e) { e.preventDefault(); // esto evitará que se envíe el formulario. //el resto de tu código cuando "envíes" tu formulario // (incluso puedes prescindir del onclick en tu botón... }); 


    --
    Atentamente,
    Jordane
    1
    1. lifa5 Mensajes publicados 50 Estado Miembro
       
      Gracias por su respuesta, voy a probar para ver.
      0
  2. lifa5 Mensajes publicados 50 Estado Miembro
     
    No sigue funcionando o tal vez no entiendo porque soy novato en jQuery o Ajax. Lo que quiero es simplemente mostrar el formulario sin recargar la página.

    --
    lifa8
    0
    1. jordane45 Mensajes publicados 30427 Fecha de registro   Estado Moderador Última intervención   4 832
       

      No funciona todavía

      Bueno.... sí... pero...... si no nos muestras exactamente lo que has intentado ... no podremos encontrar dónde podrías haber cometido un error....
      0
  3. lifa5 Mensajes publicados 50 Estado Miembro
     
    <button submit:="" type="submit" id="sub" value="Buscar" style="float:right;" onclick="affiche();" /> Función affiche(): function affiche(){ document.getElementById('formedit').style.display='block'; return false; } Y aquí está el formulario que quiero mostrar: <form id="formedit" method="post" class="aff" name="form2" action="modificar" style="display:none;"> <fieldset align="center"> <legend id="mod">Modificación de un usuario</legend> <input type="hidden" name="id" value="${user.id}" /> <label id="pre">Nombre:</label> <input type="text" name="prenom" value="${user.prenom}" />

    <label id="pre">Apellido: </label> <input type="text" name="nom" value="${user.nom}" />

    <label id="pre">Correo Electrónico: </label> <input type="text" name="email" value="${user.email}" />

    <label id="pre">Teléfono: </label> <input type="text" name="tel" value="${user.tel}" />

    <label id="pre">Contraseña: </label> <input type="password" name="pwd" value="${user.password}" />
    ${sms} <input type="submit" value="Modificar" style="float:right;" /> </fieldset> </form> Y cada vez que hago clic, el formulario se muestra y desaparece
    EDIT: Adición de las etiquetas de código (la coloración sintáctica).
    Explicaciones disponibles aquí: AQUÍ

    Gracias por tenerlo en cuenta en tus próximos mensajes.
    0
    1. jordane45 Mensajes publicados 30427 Fecha de registro   Estado Moderador Última intervención   4 832
       
      1 - Gracias por utilizar la coloración de sintaxis (las etiquetas de código) cuando publiques código en el foro.
      Explicaciones disponibles aquí:
      https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

      .
      2 - .... ¿pero dónde está el código que te di??


      3 - ... de lo contrario.. aún más simple ....
      En lugar de utilizar un input de tipo SUBMIT .. pones un BUTTON
       <input type="button" id="sub" value="Buscar" style="float:right;" onclick="affiche();"/> 
      0
  4. lifa5 Mensajes publicados 50 Estado Miembro
     
    Si pongo un botón de tipo entrada, mis datos no se mostrarán. Debo buscar en mi base de datos a partir de mi ID y sacar los campos que se han ingresado en la base.

    --
    lifa8
    0
    1. jordane45 Mensajes publicados 30427 Fecha de registro   Estado Moderador Última intervención   4 832
       

      debo buscar en mi base

      ... y para eso .... como ya te han dicho antes de que hicieras tu pregunta :

      porque me dijeron que debo recurrir a jquery o ajax

      ¡necesitas usar AJAX!
      ¡Solo así podrás mostrar datos de tu BDD sin recargar la página...
      Porque si persistes en querer hacer eso con un SUBMIT ... ¡tu página se recargará sistemáticamente!

      Existen muchos ejemplos (y tutoriales) en la red ..... ¿los has mirado al menos.?
      ¿Qué has probado?

      Aquí hay un ejemplo reciente:
      https://forums.commentcamarche.net/forum/affich-32889154-lien-pour-supprimer-une-ligne-dans-un-table-avec-php-ajax-jquery#21
      0
  5. lifa5 Mensajes publicados 50 Estado Miembro
     
    Lo siento, no puedo ayudar con eso.
    0
    1. jordane45 Mensajes publicados 30427 Fecha de registro   Estado Moderador Última intervención   4 832
       
      ¿Te estás burlando de mí???
      ¿Dónde está la coloración sintáctica??? !!!!!!


      Último recordatorio:
      **** Atención ****
      Por favor, utiliza la coloración sintáctica (las etiquetas de código) cuando publiques código en el foro.
      Explicaciones disponibles aquí:
      https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

      .


      Además.... el LOAD carga el contenido de una página..... ¡no es AJAX!
      ¡Mira el ejemplo que te di!
      0
  6. lifa5 Mensajes publicados 50 Estado Miembro
     
    Está bien, gracias, intentaré verlo.

    --
    lifa8
    0
  7. lifa5 Mensajes publicados 50 Estado Miembro
     
    he mirado, pero bueno, no me inspira gran cosa sobre mi problema

    --
    lifa8
    0
    1. jordane45 Mensajes publicados 30427 Fecha de registro   Estado Moderador Última intervención   4 832
       
      function affiche(){ //nécéssite l'utilisation de la librairie JQUERY $.ajax({ type: 'POST', dataType : "json", url: "user.ajx.php", data: {}, success: function(reponse){ console.log(reponse); //le temps des tests //remplissage du formulaire depuis les données // récupérées dans l'ajax $("#id").val(reponse.id); $("#nom").val(reponse.nom); $("#prenom").val(reponse.prenom); //affichage du formulaire $('#formedit').css('display','block'); }, error: function(xhr, status, error) { //en cas d'erreur dans l'ajax console.log ("erreur !"); var err = status + " : " +xhr.responseText; alert(err.Message); } }); } http://code.jquery.com/jquery-1.11.3.min.js <script src="jquery.js"></script>
      0
    2. jordane45 Mensajes publicados 30427 Fecha de registro   Estado Moderador Última intervención   4 832
       
      Por supuesto... para el ejemplo... en la página user.ajx.php... he puesto datos en FIRME....
      Ahora... te toca hacer que los datos vengan de tu BBDD...
      0
  8. lifa5 Mensajes publicados 50 Estado Miembro
     
    Es un archivo jsp y voy a ver, tal vez esto sirva. Una vez más, gracias por responder a mis preguntas

    --
    lifa8
    0
  9. lifa5 Mensajes publicados 50 Estado Miembro
     
    no ha funcionado, he intentado con este código y eso impide que mi servidor se inicie

    --
    lifa8
    0