Probleme sur script apres changement dom
loic
-
Pitet Messages postés 2826 Date d'inscription Statut Membre Dernière intervention -
Pitet Messages postés 2826 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai un tableau tout simple en html, avec lequel j'ajoute une ligne grâce a un bouton ajouter.
voici mon code html pour le tableau :
voici mon script qui ajoute une ligne :
tout ca fonctionne, mais j'ai une fonction qui agit sur l'événement blur des id qui commencent par "achat_" cette fonction fonctionne bien pour la 1ere ligne (qui est visible dès le chargement de la page) mais ne marche pas pour les lignes que j'ajoute.
voici ma fonction :
je pense qu'il faut recharger cette fonction lorsqu'on ajoute une ligne, mais j'ai essayer pas mal de chose et je n'y arrive pas.
J'espère que j'ai été assez clair. Merci par avance de votre aide.
j'ai un tableau tout simple en html, avec lequel j'ajoute une ligne grâce a un bouton ajouter.
voici mon code html pour le tableau :
<tr> <td> <input type="number" id="achat_1" /> </td></tr>
voici mon script qui ajoute une ligne :
var i=$('table tr').length; $(".addmore").on('click',function(){ html = '<tr>'; html += '<td><input type="number" id="achat_'+i+'"/></td>'; html += '</tr>'; $('table').append(html); i++; });
tout ca fonctionne, mais j'ai une fonction qui agit sur l'événement blur des id qui commencent par "achat_" cette fonction fonctionne bien pour la 1ere ligne (qui est visible dès le chargement de la page) mais ne marche pas pour les lignes que j'ajoute.
voici ma fonction :
$(function() { $('input[id^="achat_"]').blur(function() { alert('test'); }); });
je pense qu'il faut recharger cette fonction lorsqu'on ajoute une ligne, mais j'ai essayer pas mal de chose et je n'y arrive pas.
J'espère que j'ai été assez clair. Merci par avance de votre aide.
A voir également:
- Probleme sur script apres changement dom
- Changement dns - Guide
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Changement d'écriture facebook - Guide
2 réponses
Bonjour,
Dans le chargement de ta page :
Dans ta faction d'ajout de ligne
Dans le chargement de ta page :
$(function() { init(); }); function init(){ $('input[id^="achat_"]').blur(function() { alert('test'); }); }
Dans ta faction d'ajout de ligne
var i=$('table tr').length; $(".addmore").on('click',function(){ html = '<tr>'; html += '<td><input type="number" id="achat_'+i+'"/></td>'; html += '</tr>'; $('table').append(html); i++; init(); });
Salut,
Une autre solution possible est d'utiliser la fonction on :
https://api.jquery.com/on/
Bonne journée,
Une autre solution possible est d'utiliser la fonction on :
$(function() { $('table').on('blur', 'input[id^="achat_"]', function() { alert('test'); }); });
https://api.jquery.com/on/
Bonne journée,