Incrementer value d'un input

Résolu
tonio94 -  
jona303 Messages postés 369 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,


J'ai besoin de votre aide je n'arrive pas à incrémenter la value d'un input hidden :/

A la base il s'agit d'un formulaire dans lequel je souhaite via un bouton ajouter de nouveaux champs. Sauf que pour pouvoir les récupérer ensuite en php il faut qu'ils aient des noms différents, pour ça je voudrais stocker une valeur qui s'incrémente dans un input hidden.

Voici mon code :

<html>
<head>
<script>
	function addInput()
	{
		
		var newRow = document.getElementById('matable').insertRow(-1);//-1 insère en derniere ligne
			
		var nb = document.getElementById('current_nb').value;
		if (nb == "")
			nb= 1;
		
		var newCell = newRow.insertCell(0);
		newCell.innerHTML = '<i>Nom</i> : <input type = "text"  name = "nom_'+nb+'" value = "">';
		
		newCell = newRow.insertCell(1);
		newCell.innerHTML = '<i>Email</i> : <input type = "text" name = "email_'+nb+'" value = "">';
		
		newCell = newRow.insertCell(2);
		newCell.innerHTML = '<i>Tel</i> : <input type = "text" name = "tel_'+nb+'" value = "">';
			
		newCell = newRow.insertCell(3);
		newCell.innerHTML = '<i>Info</i> : <input type = "text" name = "info_'+nb+'" value = "">';
		
		document.getElementById('current_nb').value = nb++;
	}
</script>
</head>

<body>
<form action="" method="post" id="myform">
<input type="hidden" name="current_nb" id="current_nb" value="">
<table id="matable">
</table>
</form>
<a href="javascript:addInput();"><img src="images/add.png" width="20" align="absmiddle" alt="ajouter un contact" /></a>
</body>
</html>



Les champs sont bien ajoutés dans mon tableau mais la valeur ne s'incrémente pas :/


Merci par avance.

2 réponses

jjsteing Messages postés 1670 Date d'inscription   Statut Contributeur Dernière intervention   181
 
Re

le ++ c est en C, pas en js ou php
document.getElementById('current_nb').value=parseInt(document.getElementById('current_nb').value)+ 1;

Parseint() converti du texte en integer (nombre réel) .. tu as aussi parsefloat() si tu as un nombre avec des virgules ;)
6
tonio94
 
Super ça fonctionne avec parseInt() :)

Merci!
0
jjsteing Messages postés 1670 Date d'inscription   Statut Contributeur Dernière intervention   181
 
De rien...
0
jona303 Messages postés 369 Date d'inscription   Statut Membre Dernière intervention   28
 
++ fonctionne en php et en js, de même que +=1
0
jjsteing Messages postés 1670 Date d'inscription   Statut Contributeur Dernière intervention   181
 
Bonsoir :)

document.getElementById('current_nb').value=document.getElementById('current_nb').value +1;
1
tonio94
 
Ca me donne comme id des champs "nom_11" puis "nom_111", etc...

En fait ça concatène plutôt d'incrémenter.

Et en essayant ça :

document.getElementById('current_nb').value=document.getElementById('current_nb').value++;

Ca ne fonctionne pas :/
0