¿Cuándo y por qué return false
en JavaScript?
javascript
jquery
zsharp
fuente
fuente
event.preventDefault()
para esta funcionalidad. Creo que devolver falso es obsoleto y ya no funciona.return false
está en el método, ¿esto cambia algo?Supongo que te estás refiriendo al hecho de que a menudo tienes que poner un 'retorno falso'; declaración en sus controladores de eventos, es decir
El "retorno falso"; en este caso evita que el navegador salte a la ubicación actual, como lo indica href = "#"; en cambio, solo se ejecuta doSomeFunction (). Es útil para cuando desea agregar eventos a las etiquetas de anclaje, pero no quiere que el navegador salte hacia arriba y hacia abajo a cada anclaje con cada clic
fuente
Se utiliza para detener la propagación del evento . Verá cuando tenga dos elementos, ambos con un controlador de eventos de clic (por ejemplo)
Si hace clic en el elemento interno (elemento2), se activará un evento de clic en ambos elementos: 1 y 2. Se llama "burbujeo de eventos". Si desea controlar el evento solo en element2, el controlador de eventos debe devolver false para detener la propagación del evento.
Otro ejemplo será el enlace onclick handler. Si desea detener el funcionamiento de un formulario de enlace. Puede agregar un controlador onclick y devolver false. Para evitar que el evento se propague al controlador predeterminado.
fuente
false
de un controlador de eventos evitará la acción predeterminada asociada con un evento; También puede hacer esto llamandoevent.preventDefault()
o configurandoevent.returnValue = false
(IE); para evitar que el evento burbujee, tendrás que llamarevent.stopPropagation()
o configurarevent.cancelBubble = true
(IE)Er ... ¿qué tal en una función booleana para indicar 'no es cierto'?
fuente
También llegué a esta página después de buscar "js, cuándo usar 'return false;' Entre los otros resultados de búsqueda se encontraba una página que encontré mucho más útil y directa, en el sitio CSS-Tricks de Chris Coyier: La diferencia entre 'return false;' y 'e.preventDefault ();'
La esencia de su artículo es:
aunque todavía recomendaría leer el artículo completo.
Actualización: después de discutir los méritos de usar return false; como un reemplazo para e.preventDefault (); & e.stopPropagation (); uno de mis compañeros de trabajo señaló que return false también detiene la ejecución de devolución de llamada, como se describe en este artículo: jQuery Events: Stop (Mis) Using Return False .
fuente
function() { return false; }
ES IGUAL Afunction(e) { e.preventDefault(); e.stopPropagation(); }
, pero en js puro, no es lo mismo, en realidadfunction() { return false; }
es IGUAL A.function(e) { e.preventDefault(); }
Que no deja de propagación.Cuando se usa la
each
función de jQuery , devolver verdadero o falso tiene significado. Ver el documentofuente
Creo que una mejor pregunta es, ¿por qué en un caso en el que está evaluando un conjunto booleano de valores de retorno, NO utilizaría verdadero / falso ? Quiero decir, probablemente podrías tener verdadero / nulo, verdadero / -1, otros misceláneos. Javascript "falsos" valores para sustituir, pero ¿por qué haría eso?
fuente
Cuando desee activar el código javascript desde una etiqueta de anclaje, se debe usar el controlador onclick en lugar del javascript: pseudo-protocolo. El código javascript que se ejecuta dentro del controlador onclick debe devolver verdadero o falso (o una expresión que evalúe como verdadera o falsa) de nuevo a la etiqueta en sí; si devuelve verdadero, el HREF del ancla se seguirá como un enlace normal. Si devuelve falso, se ignorará el HREF. Es por eso que "devuelve falso"; a menudo se incluye al final del código dentro de un controlador onclick.
fuente
Utiliza return false para evitar que algo suceda. Entonces, si tiene un script que se ejecuta en submit, return false evitará que el envío funcione.
fuente
Cuando se llama a una declaración de retorno en una función, se detiene la ejecución de esta función. Si se especifica, un valor dado se devuelve al llamador de la función. Si se omite la expresión, se devuelve undefined en su lugar.
Para obtener más información, consulte la página de documentos de MDN
return
.fuente
return false usando solo si tiene alguna función de trabajo (por alguna prueba) o si desea detener alguna función, por ejemplo use return false al final "onsubmit"
fuente
Además, este breve e interesante enlace para leer a través de https://www.w3schools.com/jsref/event_preventdefault.asp
Definición y uso
El método preventDefault () cancela el evento si es cancelable, lo que significa que la acción predeterminada que pertenece al evento no ocurrirá.
Por ejemplo, esto puede ser útil cuando:
Nota: No todos los eventos son cancelables. Use la propiedad cancelable para averiguar si un evento es cancelable.
Nota: El método preventDefault () no impide una mayor propagación de un evento a través del DOM. Use el método stopPropagation () para manejar esto.
fuente