IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

La fonction appelée ne se lance pas (objet requis)


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut La fonction appelée ne se lance pas (objet requis)
    Bonjour tout le monde,

    J'ai un petit problème avec mon script "javascript".

    A un certain moment, je demande d'appeler une fonction, mais ça ne fonctionne pas, j'obtiens ce message d'erreur :

    Ligne 140

    'Objet attendu'

    Voici la ligne 140 :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    } else {
    				cCI1TH_val.value = "";	// Si la checkbox est décoché on met une chaine vide pour les crédits ECTS.
    			}
    			somme();		
    					}
    Voici la fonction appelée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    function somme() {
    		/** Variables permettant la récupération des valeurs */
    		var th_ects1,th_ects2,th_ects3,th_ects4;
    		var tp_etcs1,tp_etcs2,tp_etcs3,tp_etcs4;
    		var ex_ects1,ex_ects2,ex_ects3,ex_ects4,
    		var total;  // Correspond à ton champ txtTotalECTS
     
    		// Ici on récupère tous nos champs 
    		th_ects1 = (document.getElementById("ECTSCI1TH").value != "" && document.getElementById("ECTSCI1TH").value != "undefined")?parseInt(document.getElementById("ECTSCI1TH").value):0;
    		th_ects2 = (document.getElementById("ECTSCI2TH").value != "" && document.getElementById("ECTSCI2TH").value != "undefined")?parseInt(document.getElementById("ECTSCI2TH").value):0;
    		th_ects3 = (document.getElementById("ECTSCI3TH").value != "" && document.getElementById("ECTSCI3TH").value != "undefined")?parseInt(document.getElementById("ECTSCI3TH").value):0;
    		th_ects4 = (document.getElementById("ECTSCI4TH").value != "" && document.getElementById("ECTSCI4TH").value != "undefined")?parseInt(document.getElementById("ECTSCI4TH").value):0;
    		tp_etcs1 = (document.getElementById("ECTSCI1TP").value != "" && document.getElementById("ECTSCI1TP").value != "undefined")?parseInt(document.getElementById("ECTSCI1TP").value):0;
    		tp_etcs2 = (document.getElementById("ECTSCI2TP").value != "" && document.getElementById("ECTSCI2TP").value != "undefined")?parseInt(document.getElementById("ECTSCI2TP").value):0;
    		tp_etcs3 = (document.getElementById("ECTSCI3TP").value != "" && document.getElementById("ECTSCI3TP").value != "undefined")?parseInt(document.getElementById("ECTSCI3TP").value):0;
    		tp_etcs4 = (document.getElementById("ECTSCI4TP").value != "" && document.getElementById("ECTSCI4TP").value != "undefined")?parseInt(document.getElementById("ECTSCI4TP").value):0;
    		ex_etcs1 = (document.getElementById("ECTSCI1EX").value != "" && document.getElementById("ECTSCI1EX").value != "undefined")?parseInt(document.getElementById("ECTSCI1EX").value):0;		
    	ex_etcs2 = (document.getElementById("ECTSCI2EX").value != "" && document.getElementById("ECTSCI2EX").value != "undefined")?parseInt(document.getElementById("ECTSCI2EX").value):0;
    	ex_etcs3 = (document.getElementById("ECTSCI3EX").value != "" && document.getElementById("ECTSCI3EX").value != "undefined")?parseInt(document.getElementById("ECTSCI3EX").value):0;
    	ex_etcs4 = (document.getElementById("ECTSCI4EX").value != "" && document.getElementById("ECTSCI4EX").value != "undefined")?parseInt(document.getElementById("ECTSCI4EX").value):0;
     
    		total = document.getElementById("txtTotalECTS");
    		total.value = th_ects1+th_ects2+th_ects3+th_ects4+tp_etcs1+tp_etcs2+tp_etcs3+tp_etcs4+ex_ects1+ex_ects2+ex_ects3+ex_ects4;
     
    	}
    </script>

    Pourriez-vous me dire svp pourquoi il n'arrive pas à la fonction

    Merci d'avance.

    beegees

  2. #2
    Membre éprouvé Avatar de rieppe
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2004
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 115
    Par défaut
    Salut,

    C'est ca ta ligne 140 ?
    Si c'est le cas peut etre que cCI1TH_val ne pointesur aucun objet ?

  3. #3
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut
    Salut Rieppe,

    Désolé pour le manque de précision.

    La ligne 140 correspond à :

    Qu'en penses-tu (vous) ?

    Merci et bonne journée.

    bgs

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var th_ects1,th_ects2,th_ects3,th_ects4;
    var tp_etcs1,tp_etcs2,tp_etcs3,tp_etcs4;
    var ex_ects1,ex_ects2,ex_ects3,ex_ects4,
    var total;
    Regarde la ligne 3, tu as mis une virgule au lieu d'un point-virgule en fin de ligne.

  5. #5
    Membre expérimenté
    Avatar de beegees
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2004
    Messages
    3 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 610
    Par défaut
    Bonjour,

    Je vais être franc avec toi (vous), c'est un membre de développez.com qui m'a gentiement écrit cette fonction (et m'a bien aidé pour la conception de ma page web).

    Bon, le fait de mettre un ; à la fin est une bonne idée mais le problème persiste et est différent.

    Dès que je choisis un cours, ce code se met en route :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    <script type="text/javascript" language="javascript">
     
     
    	// c'est ici qu'on ajouter ou on supprime des cours, il faut additionner ou soustraire des éléments dans le tableau de crédits et dans la liste déroulante quand on ajoute ou on soustrait un cours ici.
    		var nom_matiere = new Array('',
    									Cours1
    Cours2....
     
     
    		/** Fonction de mise à jour que l'on a vu ensemble avec en plus, la mise à jour de la checkbox ainsi que de ton
    		*	input text.
    		*/
    		function maj() {
    				t = document.getElementById('CI1');	
    				s = document.getElementById('select4');
    				t.value = nom_matiere[s.options[s.selectedIndex].value];
    				maj_checkbox();
    				maj_checkboxCI1TP();				
    				maj_checkboxCI1EX();
    				//c'est pour le page maj_ci.asp.
    				document.form1.hfCI1.value=t.value;
    				document.form1.hfCI1mnemonic.value = s.value;
    		}
     
    		function majannee() {
    		//on créé une variable a (année) et on lui donne la valeur sélectionnée de annee (liste déroulante année)
    		a = document.getElementById('lcannee');
    		//je récupère la valeur de a et je la met dans le champs caché hfannee (hf = à hidden field)
    		//le but de cette action est de pouvoir récupérer la valeur du champs caché via la page d'action asp
    		//on ne peut pas récupérer la valeur d'une variable javascript mais bien d'un champs caché.
    		document.form1.hfannee.value = a.value;
     
    		}
     
     
    		function maj_checkbox() {
    			//TABLEAU D'ECTS
    			//c'est ici qu'on change la valeur des ECTS !!!!!!!!!!!!
    			//0 correspond à choississez une matière
    		var credits = new Array(0,1/*Biochimie Médicale BIOC 008*/,4/*Biologie Générale BIOL-J-101*/,3/*);	// Tableau des crédits ECTS. On retrouve 21 valeur ce qui correspond au nombre d'option disponible dans ton select. A toi de choisir la valeur des crédits ECTS en fonction de la matière. J'ai fais simple pour l'exemple mais les nombres peuvent très bien changer ;)
    			cCI1TH = document.getElementById('cbCI1TH');	// On récupère la checkbox qui a pour id="checkboxECTS"  (correspond à TH)
    			cCI1TH_val = document.getElementById('ECTSCI1TH');	// On récupère le input text à coté de la checkbox
    			s = document.getElementById('select4');	
    			if(cCI1TH.checked) {		// On test si la checkbox est coché
    				cCI1TH_val.value = credits[s.options[s.selectedIndex].value];	// Puis on met à jour le input text en récupèrant la valeur de la matière selectionné et en allant cherché le nombre de crédits ECTS dans le tableau credits
    				//alert(cCI1TH_val.value);
    				ECTSCITH = cCI1TH_val.value;
     
    				//alert(ECTSCITH);
    				document.form1.txtTotalECTS.value = ECTSCITH.value;
     
    				document.form1.hfCI1TH.value=cCI1TH_val.value;
     
    			} else {
    				cCI1TH_val.value = "";	// Si la checkbox est décoché on met une chaine vide pour les crédits ECTS.
    			}
    			somme();		
    					}
    	</script>
    Il met met dans ma zone de texte qui devrait récupérer le total "NaN" ?

    Comprends plus rien moi

  6. #6
    Membre éprouvé Avatar de rieppe
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2004
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2004
    Messages : 115
    Par défaut
    Citation Envoyé par beegees
    Il met met dans ma zone de texte qui devrait récupérer le total "NaN" ?

    Comprends plus rien moi
    NaN veut dire not a number, il doit y avoir un problème dans ton calcul ^_^. Jvais essayer de regarder.

    EDIT : Tu es sur que les lignes du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    th_ects1 = (document.getElementById("ECTSCI1TH").value != "" && document.getElementById("ECTSCI1TH").value != "undefined")?parseInt(document.getElementById("ECTSCI1TH").value):0;
    Te donnent bien des nombres ?

Discussions similaires

  1. ma fonction ne se la lance pas - onsubmit
    Par exe2bin dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 02/10/2012, 22h07
  2. Fonction qui ne se lance pas ?
    Par titimoi dans le forum jQuery
    Réponses: 26
    Dernier message: 22/01/2012, 13h29
  3. Fonction qui ne se lance pas
    Par ingeniomatique dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 11/06/2011, 15h32
  4. Fonctions Jquery ne se lance pas sous Chrome
    Par akrogames dans le forum jQuery
    Réponses: 0
    Dernier message: 18/04/2011, 18h23
  5. fonction qui ne se lance pas
    Par le_voisin dans le forum Débuter
    Réponses: 3
    Dernier message: 26/01/2009, 09h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo