Javascript : un champs sur 2 obligatoire

mika86 -  
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
J'ai un formulaire sur mon site qui recueille des demandes de devis.
Je pose donc quelques questions, notamment "quel est votre numéro de telephone" et je donne le choix entre le telephone fixe ou le portable.

J'aimerai rendre l'un des deux champs obligatoire (la page est en html, les champs vérifiés en javascript et un bout de code php m'envoi le tout par email)

J'ai tenté :
function verification(){

if(document.getElementById('f_job_phone').value == "" && document.getElementById('f_mobile_phone').value == ""){
       alert ('Merci d indiquer votre numero de telephone mobile ou fixe');
        return false;
}
return true;
}


Mais cela ne fonctionne pas.
A votre avis ou est l'erreur ?
Comment rendre obligatoire le remplissage d'un champs ou d'un autre en javascript ?
Un grand merci d'avance

4 réponses

Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
essayes comme ça:

function verification(){
	var un_champ_rempli=false;
	if(document.getElementById('f_job_phone').value != "") un_champ_rempli=true;
	if(document.getElementById('f_mobile_phone').value != "") un_champ_rempli=true;
	if(un_champ_rempli == false ){
		   alert ('Merci d indiquer votre numero de telephone mobile ou fixe');
			return false;
	}
	return true;
}
0
mikl86
 
Merci pour ta réponse Alain,
Je viens d'essayer malheuresement ca ne fonctionne pas.
Le devis est validé , la vérification des champs ne se fait pas
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
as tu bien fait comme ça ?

<html>
<head>
<script type="text/javascript">
function verification(){
	var un_champ_rempli=false;
	if(document.getElementById('f_job_phone').value != "") un_champ_rempli=true;
	if(document.getElementById('f_mobile_phone').value != "") un_champ_rempli=true;
	if(un_champ_rempli == false ){
		   alert ('Merci d indiquer votre numero de telephone mobile ou fixe');
			return false;
	}
	return true;
}
</script>

<form name="form1" mthod="post" action="" onsubmit="return verification();">
tel fixe: <input type="text" name="tel_fixe" id="f_job_phone" value="" /><br />
tel mob: <input type="text" name="tel_mobile" id="f_mobile_phone" value="" /><br /><br />
 <input type="submit" name="envoyer"  value="Envoyer" /><br />
</form>


chez moi ça fonctionne
0
Pignic
 
Bonjour,
Je me permet de préciser que la première fonction verification me semble plus performante et je pense également que ce qui à était oublié est le return dans onsubmit="return verification();". Comme l'a mis en évidence Alain_42.
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
oui Picnic, tu as raison les deux fonctionnent mais la première est plus simple.
0