w3schools valor una tipos retornar pasar parametros otra funciones funcion desde anidadas javascript javascript-events

tipos - retornar valor de una funcion javascript



¿Cómo pasar un objeto de evento a una función en Javascript? (3)

  1. Modifique la definición de la función check_me como ::

    function check_me(ev) {

  2. Ahora puede acceder a los métodos y parámetros del evento, en su caso:

    ev.preventDefault();

  3. Luego, debe pasar el parámetro en onclick en la llamada en línea ::

    <button type="button" onclick="check_me(event);">Click Me!</button>

Un enlace útil para entender esto.

Ejemplo completo:

<!DOCTYPE html> <html lang="en"> <head> <script type="text/javascript"> function check_me(ev) { ev.preventDefault(); alert("Hello World!") } </script> </head> <body> <button type="button" onclick="check_me(event);">Click Me!</button> </body> </html>

function check_me() { //event.preventDefault(); var hello = document.myForm.username.value; var err = ''''; if(hello == '''' || hello == null) { err = ''User name required''; } if(err != '''') { alert(err); $(''username'').focus(); return false; } else { return true; } }

En Firefox, cuando trato de enviar un valor vacío, arroja el error y establece el foco nuevamente en el elemento. Pero lo mismo no sucede en IE, ya que arroja un error y luego de hacer clic en Aceptar y publicar el formulario (devuelve verdadero).

¿Cómo puedo evitar esto? Estaba pensando en evitar esto usando event.preventDefault (), pero no estoy seguro de cómo hacerlo con este método. Intenté pasar checkme (evento) ... pero no funcionó. Estoy usando Prototype js.

(Sé cómo pasar un evento cuando enlace una función .click en javascript ... en lugar de llamar a onclick dentro de html ... usando Jquery, pero tengo que depurar este fragmento de código)


Intente hacer que onclick js use ''return'' para asegurarse de que se use el valor de retorno deseado ...

<button type="button" value="click me" onclick="return check_me();" />


Yo cambiaría tu encuadernación para que sea:

<button type="button" value="click me" onclick="check_me" />

Entonces cambiaría tu declaración de función check_me() para que sea:

function check_me() { //event.preventDefault(); var hello = document.myForm.username.value; var err = ''''; if(hello == '''' || hello == null) { err = ''User name required''; } if(err != '''') { alert(err); $(''username'').focus(); event.preventDefault(); } else { return true; } }