Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: SrTrp en 14 Agosto 2021, 04:15 am



Título: Boton me actualiza pagina sin querer y no ejecuta función
Publicado por: SrTrp en 14 Agosto 2021, 04:15 am
Hola que tal estoy enviando desde el cliente al servidor pero lo unico que me hace el boton es que me redirecciona a la misma pagina, por un momento pense que era por mis locations pero los comente pensando que era eso pero sigue igual.
Código
  1. function addercolection{
  2.        if(name_folder.value.length>0 && abrevia_colec.value.length>0 && nombre_colec.value.length>0){                      
  3.  
  4.                        var data = new FormData();                    
  5.                        data.append('folder', name_folder.value);
  6.                        data.append('abrevia', abrevia_colec.value);
  7.                        data.append('nombre', nombre_colec.value);
  8.                        var abreb = abrevia_colec.value;
  9.                       if(abreb.length>=3){
  10.                            $.ajax({
  11.                                data: data ,
  12.                                url: "/administracion/crearColeccion",
  13.                                type: "POST",
  14.                                contentType: false,
  15.                                processData: false,
  16.                                success:
  17.                                function (r) {
  18.                                    if(r=="Se ah creado la colección"){                                                                        
  19.                                        //location.href="subida?vr=true";
  20. console.log('true');
  21.                                    }else{                                        
  22. console.log('ERROR');
  23.                                      //  location.href="subida?vr=false&error="+r;
  24.                                    }
  25.                                    //alert('' + r);
  26.  
  27.                                }
  28.                            });
  29.                       }else{
  30.                        alert("La abreviatura debe tener como mínimo 3 caracteres");
  31.                       }
  32.  
  33. }else{
  34.    alert("Por favor no dejes los campos vacíos");
  35. }
  36.    }
  37.  

Aquí esta mi botón, revise y no tengo ningún formulario en la pagina, solo si tengo otros inputs y botones.
Código
  1. <button style="display: initial;background-color: white;color: black;border: 2px solid #4CAF50;" id="add_coleccion" class="btn btn-primary btn-cons " onclick="addercolection();">
  2.                        <span class="btn-label">
  3.                        <i class="glyphicon glyphicon-ok"></i>
  4.                        </span> Crear Colección</button>
  5.  


Título: Re: Boton me actualiza pagina sin querer y no ejecuta función
Publicado por: 3n31ch en 14 Agosto 2021, 05:00 am
Por casualidad tu botón está dentro de un formulario?

Si es así, entonces agrega el atributo type = "button" al botón.

Nos cuentas como te fue.

Nota: No había leido tu código. Recomiendo dejar de usar jquery. javascript nativo es suficiente para realzar todo lo que estás haciendo.



EDITO: Por leer rápido.  no vi lo del formulario.

Prueba actualizar la cache. Cntrl+f5 si estás en google chrome. Quizas esté el js de una versión anterior cargado.

Por otro lado, me llama la atención que no te falle el JS, a la función no le pusiste los paracentesis.

Por lo contrario, si sigue fallando ¿podrías pegar el html completo, para verificar? También puede ser otra función que se esté ejecutando. verifica todo el js.


Título: Re: Boton me actualiza pagina sin querer y no ejecuta función
Publicado por: SrTrp en 16 Agosto 2021, 23:43 pm
Gracias gracias amigo ya lo solucione el problema era en el nombre de la funcion me faltaban los () pero ya quedo, hablando de lo que me mencionaste es posible recibir información o enviar al servidor con JS nativo? es que me quede atrás con ajax.


Título: Re: Boton me actualiza pagina sin querer y no ejecuta función
Publicado por: 3n31ch en 17 Agosto 2021, 03:50 am
Si, claro. Con fetch().
 https://developer.mozilla.org/es/docs/Web/API/Fetch_API (https://developer.mozilla.org/es/docs/Web/API/Fetch_API)
Saludos,