Cómo alertar usando jQuery

2 minutos de lectura

Esto funciona:

$('.overdue').addClass('alert');

Pero esto no:

$('.overdue').alert('Your book is overdue.'); 

¿Cuál es la sintaxis jQuery correcta para:

FOR EACH CLASS="overdue"
   alert('Your book is overdue');
NEXT

  • definir “alerta”. ¿Quiere que aparezca un cuadro emergente (a través de window.alert()), ¿o que?

    –Eric

    10 de mayo de 2010 a las 15:58

  • ¿Desea que la alerta se muestre solo cuando se hace clic en un elemento de la clase vencida?

    – Adán

    10 de mayo de 2010 a las 15:58

  • Creo que la alerta se define correctamente en el ejemplo anterior.

    – Phillip Senn

    10 mayo 2010 a las 18:12

$(".overdue").each( function() {
    alert("Your book is overdue.");
});

Tenga en cuenta que “.addClass()” funciona porque addClass es una función definida en el objeto jQuery. No puede colocar cualquier función antigua al final de un selector y esperar que funcione.

Además, probablemente sea una mala idea bombardear al usuario con n ventanas emergentes (donde n = el número de libros atrasados).

Quizás use la función de tamaño:

alert( "You have " + $(".overdue").size() + " books overdue." );

  • Está bien. Pase algún tiempo en el sitio web de JQuery leyendo su documentación. Tendrá sentido lo que está pasando eventualmente.

    – Adam Sills

    10 de mayo de 2010 a las 16:04

No hagas esto, pero así es como lo harías:

$(".overdue").each(function() { 
    alert("Your book is overdue"); 
});

La razón por la que digo “no lo hagas” es porque nada es más molesto para los usuarios, en mi opinión, que las ventanas emergentes repetidas que no se pueden detener. En su lugar, simplemente use el length propiedad y hágales saber que “Tiene X libros vencidos”.

  • Molestar al usuario es lo que quiere el cliente.

    – Phillip Senn

    10 mayo 2010 a las 16:10

Para cada uno funciona con JQuery como en

$(<selector>).each(function() {
   //this points to item
   alert('<msg>');
});

JQuery también, para una ventana emergente, tiene en la biblioteca de la interfaz de usuario un widget de diálogo: http://jqueryui.com/demostraciones/dialog/

Compruébalo, funciona muy bien.

HH.

  • Buena alternativa para usar jQuery-UI.

    – Phillip Senn

    10 mayo 2010 a las 16:11

¿Ha sido útil esta solución?