Test d'un champ vide et operateur && dans

Pierre -  
 Pierre -
Bonjour,

j'utilise un formulaire avec deux champs à option :

<select name="champ1">
<option></option>
<option>valeur 1</option>
<option>valeur 2</option>
...
<select name="champ2">
<option></option>
<option>valeur 1</option>
<option>valeur 2</option>
...

et je souhaite tester si au moins un des deux a une valeur, je fais le test suivant :

if ((frm['champ1'].value == '') && (frm['champ2'].value == ''))
{
alert('Please enter a value.');
return false;
}

cela marche très bien dans Firefox, mais dans IE quelque soit la façon dont je renseigne mes 2 champs j'ai toujours le resultat false.

Que dois-je corriger ? le test champ vide ? l'opérateur && ?

Merci d'avance pour votre aide.
A voir également:

1 réponse

Zep3k!GnO Messages postés 2049 Statut Membre 200
 
C'est le probleme classique entre IE et FF.
Pour récupérer ton objet passe par la methode getElementsByName
voici un ptit script pour que tu comprennes bien :

<html>
<head>
<script type="text/javascript">
function test(){
if ( (document.getElementsByName('champ1')[0].value == '') && (document.getElementsByName('champ2')[0].value == '') )
{
alert('Please enter a value.');
}
}
</script>
</head>

<body>
<select name="champ1">
<option></option>
<option>valeur 1</option>
<option>valeur 2</option>
<br/><br/>
<select name="champ2">
<option></option>
<option>valeur 1</option>
<option>valeur 2</option>
<input type="button" onclick="javascript:test()"/>
</body>
</html>

EnJoY !
0
Pierre
 
bonjour,

hélas toujours pas résolu.
ok dans FF, mais toujours pas dans IE
0