Tengo un formulario que se envía por ajax. Antes de la presentación, hay una función que comprueba si un textarea en el formulario está vacío antes de enviar. si está vacía, necesito detener la secuencia de comandos y mostrar un cuadro de modal Y prevenir la presentación de los datos para continuar.

¿Cómo puedo detener la ejecución? ¿Puedo usar

break;

?

OriginalEl autor Hirvesh | 2011-02-22

4 Comentarios

  1. 23

    Nope, generalmente utiliza return;

    Por supuesto, los detalles exactos variarán dependiendo de su aplicación. Usted puede necesitar return false;, por ejemplo, y comprobar manualmente el valor de retorno para ver si mantener o no ejecutar la secuencia de comandos en la función de llamada.

    return false; es. Gracias!
    lo que si es de dentro del Bucle ? return false no funciona entonces ??
    return false va a salir de una función, incluso si usted está dentro de un for bucle.

    OriginalEl autor David Hedlund

  2. 3

    Intente esto:

    $('#target').submit(function() {
      alert('Handler for .submit() called.');
      return false;
    });

    OriginalEl autor turbod

  3. 1

    Usted podría utilizar break; pero si usted no puede comprobar los valores de retorno (uso return; o return $bool; para eso).

    Creo que una construcción de este tipo haría:

    .submit(function ()
    {
        if (verifyInput())
        {
        //continue
        }
        else
        {
        //show user there is something wrong
        }
    });

    verifyInput() en este caso tendría que devolver un valor booleano, por supuesto, en representación de si o no el formulario fue llenado correctamente.

    OriginalEl autor Zsub

  4. 1

    Mientras regresaban funciona lo suficientemente bien como para evitar el default acción de enviar, le sugiero llamar evento.preventDefault(). Simplemente llame primero para evitar que el usuario del agente de control predeterminado de que eventType. Podría decirse que es la forma más moderna de hacer esto.

    Por supuesto, esto supone que usted tiene un de referencia para el evento, que será el primer argumento de la función de controlador o su EventListener objeto del método handleEvent tanto tiempo como usted proporciona un parámetro para él.

    Es sólo otra herramienta a tener en su caja de herramientas, también marida muy bien con el evento.stopPropagation, para cuando no quieres dejar la predeterminada, pero sólo quiero detener el evento de distribución.

    volver falso de un controlador en jQuery es un acceso directo para llamar evento.preventDefault() y evento.stopPropagation()
    Seguro, pero tiene el efecto secundario de detener la propagación de bien. Si usted sólo quiere dejar el valor predeterminado de la presentación de la forma que yo creo que es más correcto usar preventDefault. A menos que usted también quiere no dar a los oyentes la oportunidad de hacer realidad el evento que sucedió.

    OriginalEl autor mczepiel

Dejar respuesta

Please enter your comment!
Please enter your name here