Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Comment inserer dynamiquement un champ input [ JavaScript Orienté objet (POO) / Function & Méthodes ] (Jarod1980)

vendredi 17 août 2007 à 09:56:19 | Comment inserer dynamiquement un champ input

Jarod1980

Bonjour,
Je voudrais savoir comment peut on insérer dynamiquement des champs input type texte dans une page. Sachant que chaque champ input text doit avoir un id différent afin que je puisse récupérer leurs valeurs dans une table mysql avec du php. J'ai testé une solution en php pour pouvoir générer dynamiquement ces champs mais ma page je recharge donc du coup j'ai essayé une solution javascript, mais mon code me retourne une valeur NaN lorsque je clique sur ajouter. Est ce que quelqu'un peut m'aider ?
Merci.

<html>
<head>
<script language=javascript>
cpt_input = 1;

function ajout_input()
{
cpt_input++;
var text = '<input type="texte" name="test'+ cpt_input + '">';
document.getElementById("inputs").innerHTML =+ text;
}
</script>
</head>
<body>

<div id="inputs"><input type="texte" name="test1"></div>
<input type="button" value="Ajouter" onclick="ajout_input();"/>
</body>
</html>

Jarod_Delaware


vendredi 17 août 2007 à 10:22:52 | Re : Comment inserer dynamiquement un champ input

bultez

Membre Club




Bonjour,


   += et non pas =+

document.getElementById("inputs").innerHTML += text; 

   remarque : tu ne met pas ID= mais name= ??
   ça ne fonctionnera que son IE ( IE sait replacer un
      ID manquant par son name, pas FF par exemple )
   php, par contre ne récupère effectivement que les value des 
      champs qui ont un name.

   met donc comme <input name="toto[]" id="toto"+indice...
   PHP récupérera un Array ( toto ), on peut gérer coté javascript
      soit par document.getElementById("toto"+numero)
      soit par document.name_du_formulaire["toto[]"][numero]
            ( attention à la syntaxe : pas de . )
   




            Cordialement          Bul       [
mon Site ]    [ M'écrire ]

Généralement, c'est absurde de généraliser.

/html>

vendredi 17 août 2007 à 10:26:35 | Re : Comment inserer dynamiquement un champ input

bultez

Membre Club




encore une remarque...
   inerHTML est très pratique, mais si on ajoute
      de nombreux champs les performances se dégradent.

      dans ce cas, il vaut mieux utiliser : createElement et appendChild.


                  Cordialement          Bul       [
mon Site ]    [ M'écrire ]
                                                         Généralement, c'est absurde de généraliser.
/html>

vendredi 17 août 2007 à 11:08:12 | Re : Comment inserer dynamiquement un champ input

Jarod1980

Salut,
Merci pour toutes ces précisions. Je vais tester ce que tu m'as marqué. Je te tiens au courant.
Encore merci pour l'aide.

Jarod_Delaware

vendredi 17 août 2007 à 12:17:38 | Re : Comment inserer dynamiquement un champ input

Jarod1980

Juste une petite question, lorsque je fais un test pour voir si j'arrive à récupérer la valeur dans un des champs input ça me génère une erreur. J'ai fais ce test parce que dans mon script php j'insère des champs vide dans ma bdd.

<script language=javascript>
cpt_input = 1;

function ajout_input()
{
cpt_input++;

var text = '<input type="texte" name="test' + cpt_input + 'id="test' + cpt_input +'">&nbsp;<input type="text" name="tst"'+cpt_input+'id="tst'+cpt_input +'"><br/>';

document.getElementById("inputs").innerHTML += text;
alert('name="test' + cpt_input+'"');
}
</script>
</head>
<body>
<form name="frm">
<div id="inputs"></div>
<input type="button" value="Ajouter" onclick="ajout_input();"/>
<input type="button" value="Voir champs_1" onclick="alert(document.test2.value);"/>
</form>

Jarod_Delaware


vendredi 17 août 2007 à 12:49:20 | Re : Comment inserer dynamiquement un champ input

bultez

Membre Club





de ch'tites erreurs.

__ il manque une " dans le name et c'est text pas texte
       ...'<input type="text" name="test' + cpt_input + '" id="test' + cpt_input +'">&nbsp;...

__ l'input fait partie du formulaire
       ...alert(document.frm.test2.value);...


Cordialement                Bul     [mon Site]     [M'écrire]

En général, c'est absurde de généraliser.

vendredi 17 août 2007 à 13:37:01 | Re : Comment inserer dynamiquement un champ input

Jarod1980

Super, ça marche nickel. Décidement, je fais plein d'erreurs de syntaxes... Merci beaucoup Bultez pour ton aide.

Jarod_Delaware

vendredi 17 août 2007 à 14:28:39 | Re : Comment inserer dynamiquement un champ input

bultez

Membre Club




>>je fais plein d'erreurs de syntaxes
    si ça peut te rassurer... tu n'es pas le seul !
    des erreurs de syntaxe ou autres tout le monde en fait
       essaye les soit disant validateurs w3c ;-)) par exemple, tu vas rire...
    le tout, c'est de trouver, de rectifier, de faire marcher...

    tu connais le proverbe : il n'y a que celui qui ne fait rien qui ne fait pas de conneries.
       j'essaye de faire le moins de conneries possibles...
       pour être clair : j'essaye d'en faire le moins possible !


Cordialement            Bul     [mon Site]     [M'écrire]
En général, c'est absurde de généraliser.

vendredi 17 août 2007 à 15:44:01 | Re : Comment inserer dynamiquement un champ input

Jarod1980

lol, c'est vrai tu as tout à fait raison. Je te remercie pour ton aide, j'avance à petit pas. Mon problème est quasi réglé. Il faut juste que je trouve le moyen de savoir combien de champ input ont été insérer dans la page pour pouvoir faire une boucle lors de l'insertion de toutes les valeurs dans ma BDD.

@+

Jarod_Delaware

vendredi 17 août 2007 à 16:20:00 | Re : Comment inserer dynamiquement un champ input

bultez

Membre Club
>>il faut juste que je trouve le moyen de savoir combien de champ input ont été inséré
met un name "toto[]"            avec crochets
php récupérera un array, donc on connait directement le nombre coté serveur

Cordialement                Bul         [mon Site]     [M'écrire]
En général, c'est absurde de généraliser.


1 2

Cette discussion est classé dans : input, text, champ, inserer, dynamiquement


Répondre à ce message

Sujets en rapport avec ce message

Ajout automatique d'un champ de texte selon choix d'un menu déroulant [ par rEvOhSaLf ] Salut le monde :)Je suis entrain de faire un petit formulaire qui me fait un peu peiner...J'ai que une select box avec 5 choix:Choix 1 ="1"Choix 2 ="2 Comment placer le curseur texte dans le bon input [ par Jarod1980 ] Bonjour tout le monde,Ma question est simple, j'ai plusieurs champ input de type text sur ma page. Je voudrais lorsque ma pagese charge que le curseur envoyer un champ input text via ajax pour tchat [ par iznobe2601 ] ça fait plusieurs jours que je galere avec ce truc là qui je suis sur est simple pour vous donc pour un tchat simple live en ajax , j ' ai un champ in Comment annuler la touche enter uniquement que dans un champ input text [ par Jarod1980 ] Bonjour,Je voudrais savoir si il est possible d'annuler la touche enter dans un champ input bien précis et pas dans mon champ textarea. J'ai essayé valeur champ input [ par Songeur ] Bonjour à toutes et tousje vous expose mon problèmej'ai un questionnaire (formulaire) contenant 20 champs de type input...je souhaiterai qu'en cliquan Input Text et saisie semie automatique [ par fcot2002 ] Bonjour, je cherche une solution à une question concernant Input text. j'ai cherché, trouvé des posts, mais rien trouvé répondant à ma problématique Style de input type=text [ par yallal ] Bonjour,j'ai un problème pour le style d'un input. J'aimerais rendre le tour blanc ainsi que le fondSous IE7 cela controle saisie input text [ par pgu83 ] Bonjour,Je n'arrive pas à faire marcher mon contrôle de saisie sur un input text.Mon formulaire affiche la liste des commandes à valider à parti mettre automatiquement un caratère dans un input text [ par lovelacelana ] Salut,j'aimerai mettre le caratère "/" dans un input après la saisie d'un certain nombre de caratères, et je ne sais comment le faire aider moi svp. m inserer du text dans un textarea [ par bassam0205 ] Bonjour,voila, je veux ,dans un textarea, lors de l'appui sur touche entrée recuperer la derniere ligne saisi et initier la nouvelle ligne par un text


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,546 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.