JS: problème fonction à plusieurs parametres

Résolu
Koma777 Messages postés 270 Statut Membre -  
avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous,

j'ai un petit problème en javascript...

Je souhaiterais tester si un champ de mon formulaire est vide.
Pour cela j'utilise cette fonction qui marche très bien:

function verifChamp(champ)
{		
	var champAVerif = document.getElementById(champ).value;
	
	
	if ((champAVerif == ""){
		alert("Un champ n'a pas été remplie");		
		return false;
	}
		return true;
}


Mais je souhaiterais tester : si au moins un des quatres champs et rempli, le programme peut continuer...
Pour cela j'utilise:

function verifChamp(champ, champ1, champ2, champ3)
{		
	var champAVerif = document.getElementById(champ).value;
	var champAVerif1 = document.getElementById(champ1).value;
	var champAVerif2 = document.getElementById(champ2).value;
	var champAVerif3 = document.getElementById(champ3).value;
			
	if ((champAVerif == "") && (champAVerif1 == "") && (champAVerif2 == "" ) && (champAVerif3 == ""){
		alert("Un champ n'a pas été remplie");		
		return false;
	}
		return true;
}


Mais là, ça ne fonctionne plus...
D'ailleurs je ne sais pas si je peut mettre 4 paramètres à ma fonction comme je le fais...

Quelqu'un aurait-il une idée??

Mon HTML:

  onClick= " verifChamp('critereNumAff onDate toDate fromDate')">


Merci d'avance pour votre aide!
Configuration: Windows 7
Firefox 3.5.6

6 réponses

  1. PhP Messages postés 1774 Statut Membre 606
     
    Bsr

    Ta fonction verifChamp semble ok

    Par contre ton appel en HTML est faux
    onClick= " verifChamp('critereNumAff onDate toDate fromDate')">

    ici tu ne passe qu'un seul paramètre sur les 4 à ta fonction qui est : "critereNumAff onDate toDate fromDate"

    Il faut bien séparer chaque paramètre par une virgule et démimiter chacune des chaînes :
    onClick= " verifChamp('critereNumAff','onDate','toDate','fromDate')">
    1
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Je penses qu'il manque une parenthèse sur cette ligne :
    if((champAVerif == "") && (champAVerif1 == "") && (champAVerif2 == "" ) && (champAVerif3 == ""){
    1
  3. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Bonne idée !! :)
    Dreamweaver, je n'appelles pas vraiment ça du codage ....
    1
  4. PhP Messages postés 1774 Statut Membre 606
     
    c'est pas faux ! Avec un éditeur digne de ce nom au hasard NotePad++ c'est facile à voir ;-)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Koma777 Messages postés 270 Statut Membre 7
     
    Merci.
    C'était tellement con...
    Mais bon, des fois, on a beau chercher pendant des heures, si on cherche autre chose qu'une faute de syntaxe...
    Merci en tout cas :)
    0
  7. Koma777 Messages postés 270 Statut Membre 7
     
    Je crois que je vais arrêter le codage sur dreamweaver, et revenir à un bon vieux notepad ++ :)
    0