Comment ajouter un évènement à la fonction append de jQuery

for (i=1; i<=nb_mot_trouver; i++)
{
creation = 'creation_' + i;
$('#table').append('<div id="' + creation + '">' + new_var_append + '</div>');
}
Ce n'est qu'une partie du code.
Je voudrais savoir comment ajouter un évènement onclick à $('#table') selon la variable "creation".

J'ai essayé :
$('#table').append('<div id="' + creation + '" onclick="' + fonction() + '">' + new_var_append + '</div>');
Mais ça ne marche pas.
Pourriez-vous m'aider.
Merci d'avance

4 réponses

  1. Tu as oublié le dièse dans ton sélecteur css :
    puisque
    creation = 'creation_' + i

    $(creation)
    correspond à
    $('creation_2')
    pour i=2
    mais le bon sélecteur est
    $('#creation_2')
    soit
    $('#' + creation)

    mettre un évènement 'click' dans un $('#table').scroll()
    Les événements sont indépendants et se mettent sur un éléments. Ta question n'a pas de sens.
    On peut gérer tous les événements possibles pour chaque élément, par exemple :
    $('#table').click('clic sur #table');
    $('#table').scroll('scroll de #table');

    Voici un exemple avec plusieurs événements :

    for (i = 1; i < 4; i++) {
    $('#table').append('<div id="creation_' + i + '">creation_' + i + '</div>');
    $('#creation_' + i).click(function() {
    alert('clic sur ' + $(this).attr('id'));
    });
    $('#creation_' + i).mouseover(function() {
    $(this).css('font-weight', 'bold');
    });
    $('#creation_' + i).mouseout(function() {
    $(this).css('font-weight', 'normal');
    });
    }
    $('#table').scroll(function() {
    // scroll de l'élément #table
    });
    1
    1. Merci de ton aide Pitet,
      Finalement, j'ai utilisé l'évènement onscroll sur une balise HTML
      Et ça marche
      Tu peux visiter mon site sur www.liregratuit.fr
      Merci pour tout et à bientôt sur le net
      Saïd
      0
  2. Une précision :
    Sur l'élément '#table', après y avoir insérer les éléments div à l'id 'creation_' + i;
    j'y place un scroll sur la table.
    En fait je ne sais pas si je peux mettre un évènement 'click' dans un $('#table').scroll()
    Encore merci d'avance pour votre aide
    1
    1. creation est une variable qui prend une valeur selon une boucle avec un indice (creation = 'creation_' + i;)

      dans l'élément $('#table') j'ajoute plusieurs <div> sur la variable creation où je veux pouvoir affilier une fonction sur un évènement click.
      Dans une boucle où je crée des div à l'id creation sur l'élément '#table' j'ai essayé :

      for (i=1; i<=max; i++)
      {
      creation = 'creation_' + i;
      $('#table').append('<div id="' + creation + '">' + new_var_append + '</div>');
      $(creation).click(function(){alert(creation);});
      }
      L'évènement click ne s'exécute pas.
      Merci d'avance pour votre aide
      1
      1. Salut,

        Pour ajouter un évènement onclick à l'élément #table :

        $('#table').click(function() {
        alert('clic sur #table');
        });

        selon la variable "creation"

        Pas sur d'avoir compris ce point. Peux tu nous expliquer plus en détail ?
        Si tu souhaites ajouter un évènement onclick sur l'élément #creation créé avec la fonction append(), tu fois pouvoir faire comme ceci :

        $('#table').append('<div id="' + creation + '">' + new_var_append + '</div>');
        $('#creation').click(function() {
        alert('clic sur #creation');
        });

        Bonne journée
        1