Bonjour,
Je ne suis pas une pro du développement et j'ai un petit soucis pour une histoire de variable et de tableau.
Le contexte
Sur une appli web j'ai une page asp qui permet à l'utilisateur d'afficher le contenue d'une base de donnée et de faire des modifications dessus.
A la fin de mon formulaire j'ai un tableau qui reprend les infos de contact, j'affiche de le nom +n° de tel+n° de portable du 1er contact, l'utilisateur peut alors clicker sur un bouton pour faire apparaitre une nouvelle ligne de contact
![](http://www.servimg.com/image_preview.php?i=52&u=10042692)
a l'événement onclick la fonction AjoutContact() est appelée.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| var numLigne=1;
function AjoutContact()
{
var sHTML;
// Incrementation de lignes dans la table
numLigne++;
//test
var contact="strContact"+numLigne;
alert(contact);
//boucle pour l'insertion de cellules dasn chaque nouvelle igne
//je limite à 3 lignes suppl.
if (numLigne < 5)
{
//insertion de lignes dans la table
oRow= document.getElementById('TableContact').insertRow(-1);
for (i=0; i<6; i++)
{
var oCell = oRow.insertCell(i);
//Utilisation du switch pour insertion de valeurs différentes selon les cellules
switch (i)
{
case 0 :
sHTML="<font color=\"#A36732\"> Nom contact "+numLigne+" :";
break;
case 1 :
sHTML="<input type=\"texte\" style={width:100%} name=\"CONTACT"+numLigne+"\" value=\"test "+contact+"\">";
break;
case 2 :
sHTML="<font color=\"#A36732\">Tel"+numLigne+" :";
break;
case 3 :
sHTML="<input type=\"texte\" style={width:100%} name=\"TEL"+numLigne+"\" value=\"test"+numLigne+"\">";
break;
case 4 :
sHTML="<font color=\"#A36732\">Portable"+numLigne+" :";
break;
case 5 :
sHTML="<input type=\"texte\" style={width:100%} name=\"PORT"+numLigne+"\" value=\"test"+numLigne+"\">";
break;
}
//oCell.insertAdjacentHTML("beforeEnd", sHTML);
oCell.innerHTML = sHTML;
}
}
else
alert("Vous avez atteint le nombre maximal de contacts");
} |
Le problème
Mon problème se situe au niveau de la valeur de l'input type text qui est affiché dans les case 1, case 3 et case 5 car le nom de la variable qui contient la valeur change (strContact2 - strContact3 ect...) alors j'ai bien essayé de bidouille un truc genre contact="strContact"+numLigne et là effectivement j'ai le bon nom de varaible mais si je met
sHTML="<input type=\"texte\" style={width:100%} name=\"CONTACT"+numLigne+"\" value=\"<%= "+contact+"%>\">";
et bien le <%= n'est pas interpréter ! donc àl'affichage j'ai comme valeur de mon input ++ trèèèèèèèès intéressant![:cry:](https://www.developpez.net/forums/images/smilies/icon_cry.gif)
je vous met aussi le tableau et le bouton
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
| <TABLE name="TableContact" id="TableContact" border="0"width="100%">
<tr></tr>
<tr></tr>
<tr>
<td colspan=6 class="title">Contacts</td>
</tr>
<tr></tr>
<tr></tr>
<tr>
<td width="15%">
<font color="#A36732">Propriétaire :</font>
</td>
<td colspan="5">
<%
strProprio = StringHelper.replaceNull (strProprio, "");
strProprio = StringHelper.replaceSpecialChar (strProprio);
%>
<input name="PRIX" id="PROPRIO" type="text" value="<%=strProprio%>" maxlength="30" style={width:50%}>
</td>
</tr>
<tr>
<td width="15%">
<font color="#A36732">Nom contact 1 :</font>
</td>
<td width="30%">
<%
strContact1 = StringHelper.replaceNull (strContact1, "");
strContact1 = StringHelper.replaceSpecialChar (strContact1);
%>
<input name="CONTACT1" id="CONTACT1" type="text" value="<%=strContact1%>" maxlength="30" style={width:100%}>
</td>
<td width="5%">
<font color="#A36732">Tel1 :</font>
</td>
<td width="20%">
<%
strTel1 = StringHelper.replaceNull (strTel1, "");
strTel1 = StringHelper.replaceSpecialChar (strTel1);
%>
<input name="TEL1" id="TEL1" type="text" value="<%=strTel1%>" onblur="VerifTel(this)" maxlength="30" style={width:100%}>
</td>
<td width="10%">
<font color="#A36732">Portable1 :</font>
</td>
<td width="20%">
<%
strPort1 = StringHelper.replaceNull (strPort1, "");
strPort1 = StringHelper.replaceSpecialChar (strPort1);
%>
<input name="PORT1" id="PORT1" type="text" value="<%=strPort1%>" maxlength="30" style={width:100%}>
</td>
</tr>
<tr>
<td colspan="6">
<input type="button" value="Ajouter un contact" onclick="AjoutContact()" maxlength="30" style={width:30%}>
</td>
</tr>
</table> |
J'espère avoir été clair et surtout que quelqu'un pourra m'aider (allez je suis sur que ce n'est pas compliqué ![;)](https://www.developpez.net/forums/images/smilies/icon_wink.gif)
(désolé le text du code est tout collé à gauche!)
Partager