fonction verification box et input
1) Je dois verifier si un champs input est saisi si une radio est coché
voila un screen :
Pièce jointe 38119
Si libre est coché, le prix doit etre rentré.
Ce tableau est generer dynamiquement en fonction des choix de l'internaute.
C'est a dire que les id sont egalement généré.
Voici le code html retourné par la fonction :
Code:
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
| <form name="tableau" method="post" action="traitement.php" onsubmit="return validation()">
<table align="center" border="1">
<tr>
<td>du 20/06/2009 au 27/06/2009</td>
<td>
<input type="radio" id="rada[0]" name="etat[0]" value="1" checked>
Libre
</td>
<td>
<input type="radio" id="rad0" name="etat[0]" value="0" onclick="changement('rad0','prix0');">
Occupé
</td>
<td></td>
<td>
<input name="prix[0]" type="text" size="10" id="prix0" class="test">
</td>
</tr>
<tr>
<td>du 27/06/2009 au 04/07/2009</td>
<td>
<input type="radio" id="rada[1]" name="etat[1]" value="1" checked>
Libre
</td>
<td>
<input type="radio" id="rad1" name="etat[1]" value="0" onclick="changement('rad1','prix1');">
Occupé
</td>
<td></td>
<td>
<input name="prix[1]" type="text" size="10" id="prix1" class="test">
</td>
</tr> |
Voici le code javascript :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
function validation() {
var inputList = document.getElementById('tableau').getElementsByTagName('input');
var test = 0;
var count = inputList.length;
for(var i = 0; i < count; i++) {
var input = inputList[i];
if(input.value == '' && document.getElementByid('rad['+i+']').checked) {
alert("Entrer votre prix svp !");
input.focus;
test++;
}
}
return (test == 0);
}
Mais ca ne marche pas. J'ai reussi a le faire marché sans le && document.getElementByid('rad[+i+]').checked . Il tourne en boucle ce qui est normal vu qu'il est dans la boucle.
Savez vous comment regler ceci. |
2) Si le radio occupé est coché je veux que le prix soit desactivé.
J'ai cette fonction :
function changement(a,b)
{
if (document.getElementById(a).checked) {
document.getElementById(b).disabled=true; }
else {
document.getElementById(b).disabled=false;
}
Le probleme, c'est qu'en cliquant sur le radio occupé, il me desactive bien le prix mais en recliquant sur libre il reste inactif
Petite idée ?