Bonsoir,

Dans un code javascript je fais un append pour créer différents input.. je tape des informations dans ces inputs, j'aimerais qu'après avoir cliqué sur un bouton je puisse récupérer les valeurs écrites dans ces inputs :

 button.click(function(){
     var text_input = $('.edit_article_text');
     var title_input = $('.edit_article_title');
     var tag_input = $('.edit_article_tag');
     var id = button.attr('data-id');

     var title = title_input.val();
     var texte = text_input.val();
     var tag = tag_input.val();

     console.log(title); 
     console.log(texte);
     console.log(tag);
});

Les console.log me retourne chacun "Undefined".

9 réponses


Jinou
Réponse acceptée

Par exemple.

$(document).delegate("#lebouton", "click", function(e){
//code
});

salut,
il serait intéressant de voir le code qui crée les imputs ;)

@plus
Pierre

Normalement, lorsque le HTML est créer dans un second temps par le javascript, il faut utilisé l'evenement "delegate".

Laznet
Auteur

Pourrais-tu m'en dire plus Jinou ?

c'est simple, au lieu de faire button.click tu fais button.delegate

@plus

Laznet
Auteur

Le code qui créer les inputs :

 body.append( "<textarea class='edit_article_text'>" + data[2] + "</textarea>" );
                title.append("<input type='text' class='edit_article_title' value='" + data[1] + "'>");
                tag.append("<select class='edit_article_select'>"
                    + "<option disabled selected>Catégorie de l'article</option>"
                   + "</select>");
                var select = $(".edit_article_select");
                // Le code du dessous créer des "options" pour les mettres dans le select créé au dessus
                for (var i in data_club) {
                    select.append("<option value='" + data_club[i].tag +"'>" + data_club[i].title +"</option>")
                }
Laznet
Auteur

Jinou, je sus aller voir dans la doc, si je te demandes de m'en dire plus c'est que je n'ai pas compris.

Laznet
Auteur

Merci Jinou