11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

Voilà j'aimerai griser un champs suivant la sélection de l'utilisateur, j'ai donc essayé ceci


function verift()
{
var t= document.getElementsByName('transport1').value; // on récupère la valeur du transport
if (t!="1" )
{ // si ce n'est pas la voiture de société
document.getElementsByName('km1')[0].disabled=true;
}
}


L'affichage allant avec cette fonction étant :

			<select name="transport1" id="transport" onblur="savetransport('1');" onchange = "verift();" >
				<option value="Train">Train</option>
				<option value="Avion">Avion</option>
				<option value="Bateau">Bateau</option>
				<option value="Metro/Bus">Métro/Bus</option>
				<option value="Taxi">Taxi</option>
				<option value="1" selected="selected">Voiture perso</option>
				<option value="sct">Voiture sct</option>
			</select>				    
			
			&nbsp &nbsp <input type="text" name="km1" onblur="savetransport('1');" />
			&nbsp &nbsp <input type="text" name="pg1" onblur="savetransport('1');" />
			&nbsp &nbsp <input type="text" name="pk1" onblur="savetransport('1');" />


Est-ce une erreur de syntaxe dans ma fonction ou tout simplement de logique? ^^'
Modifié par makata (03 Jun 2008 - 11:34)
Désolé du dérangement ^^
Oublié de dire de réactivé le champs dans la fonction...
code final pour ceux qui se poserait la même question :

function verift(cible)
{
var t= document.getElementsByName('transport'+cible)[0].value; // on récupère la valeur du transport
if (t!='1' && t!='sct')
{ // si ce n'est pas la voiture de société ni la voiture perso
document.getElementsByName('km'+cible)[0].disabled=true;
document.getElementsByName('pk'+cible)[0].disabled=true;
}
else if( t== 'sct')
{ //si c'est al voiture perso
document.getElementsByName('km'+cible)[0].disabled=true;
document.getElementsByName('pk'+cible)[0].disabled=false;
}
else
{
document.getElementsByName('km'+cible)[0].disabled=false;
document.getElementsByName('pk'+cible)[0].disabled=false;
}
}

Modifié par makata (03 Jun 2008 - 15:04)