INPUT TEXT AUTOMATIQUE CREATION SUPPRESSION

MangaII Messages postés 129 Date d'inscription dimanche 9 décembre 2001 Statut Membre Dernière intervention 12 janvier 2009 - 12 mars 2012 à 08:42
lycanges Messages postés 8 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 20 janvier 2009 - 15 mars 2012 à 14:10
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/54136-input-text-automatique-creation-suppression

lycanges Messages postés 8 Date d'inscription mardi 4 décembre 2007 Statut Membre Dernière intervention 20 janvier 2009
15 mars 2012 à 14:10
Bonjour à tous les deux,

D'abord je vous remercie pour vos commentaires.
Je n'ai pas encore étudier ta proposition MANGAII, mais quand j'en aurai le temps le reprendrais mon code pour le rendre plus générique.

Et j'espère que tu en seras pleinement satisfait MGALTERO.

J'ai fait ce bout de code sans avoir de connaissances particulière en JavaScript.
Mon objectif, c'était qu'il ne soit pas trop difficile à maintenir et simple d'utilisation.
Je vais quand même essayer de m'améliorer dans cette technologie.

Merci encore pour vos réponses.

@+ lycanges
mgaltero Messages postés 8 Date d'inscription vendredi 26 septembre 2003 Statut Membre Dernière intervention 25 juin 2012
12 mars 2012 à 10:38
Bonjour,
Moi qui suis complètement nez-au-fite, je viens de tester et je trouve ça super !
Je vais dépesser pour tout comprendre.
Je garde au chaud. Reste à savoir où utiliser... Mais je trouverai bien.
Merci lycanges

MG
MangaII Messages postés 129 Date d'inscription dimanche 9 décembre 2001 Statut Membre Dernière intervention 12 janvier 2009
12 mars 2012 à 08:42
Pas mal, mais un peu lourd pour ce que c'est.
- Pense à simplifier et à mutualiser !
- N'oublie pas que tu peux aussi passer des paramètres à tes fonctions.
- Utilise des variables "globales" pour les limites (et pourquoi pas le comptage)

Globales : limiteTop LimiteBottom ne doivent pas être définies plusieurs fois ! c'est un risque d'erreur (d'en oublier). Sors ces variables des fonctions, elles seront accessibles dans les fonctions, directement (sans le var).
Par la même occasion, tu peux mettre en globales (hors fonction) une variables qui compte combien tu as d'éléments (ça éviterai d'avoir à recompter à chaque fois) (ex: var countInput=0;)

Quand tu appelle buttonMore() et buttonLess(), donne en paramètres le nom du div pour afficher les inputs. C'est simple, mais ça permet de dissocier tes fonctions du code HTML ! C'est pas bien de forcer l'utilisateur à devoir appeler son div 'div_input' (et si je veux l'appeler autrement ?). En utilisant "buttonMore('MonDivAMoi');", tu ouvre la porte à la possibilité d'avoir plusieurs divs avec des inputs différents ...

Dans les fonctions buttonMore et buttonLess tu teste exactement la même chose : les limites ! créé une fonction checkLimites(n), qui fait les tests et renvoi true/false !
Comme ça, ta fonction fonction buttonMore se résume à:

var limitTop = 20;
var limitBottom = 0;
var number = 0;
function buttonMore( nomDiv )
{
if( checkLimites( number + 1 ) ) // teste si on peut ajouter
{
createInput( nomDiv );
}
}

J'espère que j'ai été clair ...
Je te laisse continuer.

Nico
Rejoignez-nous