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 :

Script qui ne se lance plus?


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Janvier 2011
    Messages
    86
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 86
    Par d�faut Script qui ne se lance plus?
    Bonjour,
    Voil� j'ai un petit script qui s'initialise au chargement de la page, mais �tonnament il n'est plus �x�cut�, preuve en est le alert que je rajoute en tout d�but qui n'est pas affich� sur ma page.

    Quelle peut-�tre la cause?

    Si �a peut aider voici mon code:

    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
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    alert('pam');
    function init_abb() {
     
    	var btn = document.getElementById('btn_gravure');
    	btn.onclick = gravure;
    	var c_o = false;
    	var block_co;
     
    	var num_dl_cust;
    	if(document.getElementsByTagName('dl')[0]){ //nb d'enfants dt => les custom en ont 5
    		if(document.getElementsByTagName('dl')[0].getElementsByTagName('dt').length == 5){
    			num_dl_cust = 0; 
    		}else{ num_dl_cust = -1; }
    	}
    	if(document.getElementsByTagName('dl')[1]){ //nb d'enfants dt => les custom en ont 5
    		if(document.getElementsByTagName('dl')[1].getElementsByTagName('dt').length == 5){
    			num_dl_cust = 1; 
    		}else{ num_dl_cust = -1; }
    	}
    	if(!(document.getElementsByTagName('dl')[1]) && !(document.getElementsByTagName('dl')[0])){
    		num_dl_cust = -1;
    	}
     
    	if(num_dl_cust!=-1){
    		block_co = document.getElementsByTagName('dl')[num_dl_cust];
    		block_co.style.display='none'; // chacher le bloc entier
    		c_o = true;
    	}
     
    	if(var1!='' && var2!='' && var3!='' && var4!='' && var5!='') {
     
    		document.getElementById('options_'+var1).parentNode.style.display='none'; // cacher les "aucun"
    		document.getElementById('options_'+var2).parentNode.style.display='none'; // *
     
    		var bloc_typo = document.getElementById('ab_select_'+var2); // typo
    		bloc_typo.style.display='none';
     
    		var bloc_dispo = document.getElementById('ab_text_'+var3); // dispo
    		bloc_dispo.style.display='none';
     
    		var bloc_prenom = document.getElementById('ab_text_'+var4); // prenom
    		bloc_prenom.style.display='none';
     
    		var bloc_date = document.getElementById('ab_date_'+var5); // date
    		bloc_date.style.display='none';
     
    		var bloc_datep = document.getElementById('ab_date_'+var6); // date payante
    		bloc_datep.style.display='none';
     
    		var grav1 = document.getElementById('options_'+var1+'_2');
    		var grav2 = document.getElementById('options_'+var1+'_3');
    		grav1.onfocus = affich_typo;
    		grav2.onfocus = affich_typo;
     
    		var typo1 = document.getElementById('options_'+var2+'_2');
    		var typo2 = document.getElementById('options_'+var2+'_3');
    		var typo3 = document.getElementById('options_'+var2+'_4');
    		typo1.onfocus = affich_dispo;
    		typo2.onfocus = affich_dispo;
    		typo3.onfocus = affich_dispo;
     
    		var dispo = document.getElementById('options_'+var3+'_text');
    	}
     
     
     
    	// attraper les dropdowns -- attribuer les events sur chaque
    	var bbb = new Array();
    	bbb = $$('select.super-attribute-select');
    	for(var y=0; y<bbb.length; y++){
    		bbb[y].onchange = maj_options_conf;
    	}
     
    	// Initialisation des select : cocher autom. les n/a, en s'arretant au premier choix a faire
    	var cpt = 0;
    	do{
    		for(var k=0; k<bbb[cpt].options.length;k++){
    			if((bbb[cpt].options[k].text=='n/a') && (bbb[cpt].options.length<3)){
    				bbb[cpt].options[k].selected=true;
    				fireEvent(bbb[cpt], 'change');
    			}
    		}
    		cpt = cpt + 1;
    	}while((typeof(bbb[cpt])!="undefined") && bbb[cpt].options.length<3));	
     
    	// fonction de maj
    	function maj_options_conf(){
    		var vv = 0;
    		while(bbb[vv].options.length>1 && typeof(bbb[vv])!="undefined"){
    			vv = vv + 1;
    		} // on a vv le num correspondant au premier select a une seule option (pas encore rempli quoi)
    		if(bbb[vv-1].options.length<3 && bbb[vv-1].options[1].text=='n/a'){
    			bbb[vv-1].options[1].selected=true;
    			fireEvent(bbb[vv-1], 'change');
    		}
    	}
     
     
     
    }
     
    window.onload = init_abb;
     
     
    function affich_typo(){
    	document.getElementById('ab_select_'+var2).style.display='block';
    }
     
    function affich_dispo(){
    	document.getElementById('ab_text_'+var3).style.display='block';
    }
     
    function affich_prenom(){
    	document.getElementById('ab_text_'+var4).style.display='block';
    }
     
    function affich_date(){
    	document.getElementById('ab_date_'+var5).style.display='block';
    }
     
    function gravure(){
    	if(block_co.style.display=='none'){ // on va l'afficher
    		block_co.style.display='block';
    	}
    	else{ // on va le cacher
    		block_co.style.display='none';
     
    		document.getElementById('options_'+var1).checked='true'; // remise a zero des options
    		document.getElementById('options_'+var2).checked='true'; //
    		document.getElementById('options_'+var3+'_text').value=''; //
    		document.getElementById('options_'+var4+'_text').value=''; //
    		document.getElementById('options_'+var5+'_date').value=''; //
    		document.getElementById('dispo_rien').checked='true'; 
     
     
    		document.getElementById('ab_select_'+var2).style.display='none';//on cache les div qui ont été dévoilées
    		document.getElementById('ab_text_'+var3).style.display='none';
    		document.getElementById('ab_text_'+var4).style.display='none';
    		document.getElementById('ab_date_'+var5).style.display='none';
    		opConfig.reloadPrice();
    	}
    }
     
    function radio_dispo(nom){
    	pr=0; da=0;
    	document.getElementById('options_'+var3+'_text').value = ''+nom+'';
    	pr=(nom.indexOf("Prénom")!=-1);
    	da=(nom.indexOf("Date")!=-1);
    	if(pr && da) { affich_prenom(); affich_date(); }
    	else if (pr && !da) { 
    		affich_prenom();
    		document.getElementById('ab_date_'+var5).style.display='none';
    		document.getElementById('options_'+var5+'_date').value='';
    	}
    	else if (!pr && da) { 
    		affich_date();
    		document.getElementById('ab_text_'+var4).style.display='none';
    		document.getElementById('options_'+var4+'_text').value='';
    	 }
     
     
    }

    Les derni�res choses que j'ai modifi� sont mon "Initialisation" et la "fonction de maj" mais je ne vois pas d'erreurs =/

  2. #2
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POO�te
    Inscrit en
    Avril 2008
    Messages
    2 652
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : POO�te

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par d�faut
    Si l'alert de d�part n'est pas ex�cut�, pas la peine de lire la suite ^^

    Montre-nous plutot comment le script est inclus � la page

  3. #3
    Membre confirm�
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Janvier 2011
    Messages
    86
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 86
    Par d�faut
    Citation Envoy� par RomainVALERI Voir le message
    Si l'alert de d�part n'est pas ex�cut�, pas la peine de lire la suite ^^

    Montre-nous plutot comment le script est inclus � la page
    Le fichier est compact� avec d'autres fichiers JS et le tout inclus normalement sur les pages (je travaille sur une boutique Magento) mais l� n'est pas le probl�me car il y a encore quelques dizaines de modifications �a "fonctionnait" encore (�a tournait mais c'�tait idiot).

    Donc je suis pas un fana du JS, mais visiblement tout un fichier est pass� � la trappe si il y a une ligne fausse? Parce que je me relis depuis tout � l'heure et je ne vois pas l aou les erreurs probables =/

  4. #4
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par d�faut
    g�n�ralement quand un alert (ou un bout de code) n'est pas affich� alors qu'il se trouve avant un code pouvant planter c'est qu'il y'a une erreur syntaxique dans le code (mot clef inexistant, mauvaise affectation, ";" manquant, ...).

    Essaye de virer un $ ici :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    bbb = $$('select.super-attribute-select');
    EDIT :
    Tu as aussi une parenth�se en trop ici :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    	}while((typeof(bbb[cpt])!="undefined") && bbb[cpt].options.length<3));

  5. #5
    Membre confirm�
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Janvier 2011
    Messages
    86
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 86
    Par d�faut
    Citation Envoy� par Loceka Voir le message
    g�n�ralement quand un alert (ou un bout de code) n'est pas affich� alors qu'il se trouve avant un code pouvant planter c'est qu'il y'a une erreur syntaxique dans le code (mot clef inexistant, mauvaise affectation, ";" manquant, ...).

    Essaye de virer un $ ici :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    bbb = $$('select.super-attribute-select');
    EDIT :
    Tu as aussi une parenth�se en trop ici :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    	}while((typeof(bbb[cpt])!="undefined") && bbb[cpt].options.length<3));
    Merci � toi, depuis tout � l'heure je m'usais les yeux pour une b�te parenth�se... Maintenant c'est bon tout roule

    Sinon tant qu'on parle de �a, j'ai aussi eu plus t�t dans la journ�e des erreurs qui visiblement ne coupaient le d�roulement du script qu'en chemin, pas totalement comme ici.
    Alors je ne sais pas �a d�pend de quoi, si c'est une erreur syntaxique peut-�tre de son importance? J'ai aucune id�e de comment il est d�cid� de tout arr�ter ou de stopper l� o� il y a l'erreur.

  6. #6
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par d�faut
    Si ton script fonctionne jusqu'� un certain point, c'est qu'� ce point pr�cis tu lui demande de faire quelque chose qu'il lui est impossible de faire.
    Typiquement tu fais appel � une variable qui n'existe pas ou qui n'est pas renseign�e exemple :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    if (maVar == 1) // maVar non déclarée
    document.getElementsByName("a").value = "valeur" // .value n'existe pas sur un tableau
    En Java ces erreurs donneraient lieu � des NullPointerException.

    Les erreurs de syntaxe font planter le script � la "compilation" donc ton script n'est pas ex�cut�.
    Les erreurs d'acc�s aux variables font planter le script � l'ex�cution donc ton script est ex�cut� jusqu'au moment o� il y'a une erreur.

    Bon, c'est peut-�tre pas exaustif comme cause d'erreur mais je ne me rappelle pas d'autre cas. ^_^

  7. #7
    Membre confirm�
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Janvier 2011
    Messages
    86
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (�le de France)

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 86
    Par d�faut
    Citation Envoy� par Loceka Voir le message
    Si ton script fonctionne jusqu'� un certain point, c'est qu'� ce point pr�cis tu lui demande de faire quelque chose qu'il lui est impossible de faire.
    Typiquement tu fais appel � une variable qui n'existe pas ou qui n'est pas renseign�e exemple :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    if (maVar == 1) // maVar non déclarée
    document.getElementsByName("a").value = "valeur" // .value n'existe pas sur un tableau
    En Java ces erreurs donneraient lieu � des NullPointerException.

    Les erreurs de syntaxe font planter le script � la "compilation" donc ton script n'est pas ex�cut�.
    Les erreurs d'acc�s aux variables font planter le script � l'ex�cution donc ton script est ex�cut� jusqu'au moment o� il y'a une erreur.

    Bon, c'est peut-�tre pas exaustif comme cause d'erreur mais je ne me rappelle pas d'autre cas. ^_^
    Mh d'accord merci d'avoir �clair� ma lanterne.
    Je te dis au prochain bug :p

  8. #8
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Par d�faut
    Citation Envoy� par Loceka Voir le message
    Si ton script fonctionne jusqu'� un certain point, c'est qu'� ce point pr�cis tu lui demande de faire quelque chose qu'il lui est impossible de faire.
    Typiquement tu fais appel � une variable qui n'existe pas ou qui n'est pas renseign�e exemple :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    if (maVar == 1) // maVar non déclarée
    document.getElementsByName("a").value = "valeur" // .value n'existe pas sur un tableau
    En Java ces erreurs donneraient lieu � des NullPointerException.

    Les erreurs de syntaxe font planter le script � la "compilation" donc ton script n'est pas ex�cut�.
    Les erreurs d'acc�s aux variables font planter le script � l'ex�cution donc ton script est ex�cut� jusqu'au moment o� il y'a une erreur.

    Bon, c'est peut-�tre pas exaustif comme cause d'erreur mais je ne me rappelle pas d'autre cas. ^_^
    S'il utilisait une vrai console JS il verrait tout de suite ses erreurs :o

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [Batch] Script qui une fois lanc� n'affiche pas les commandes dans le terminal
    Par alex2746 dans le forum Scripts/Batch
    R�ponses: 2
    Dernier message: 25/05/2012, 10h53
  2. Projet qui ne se lance plus :(
    Par Mozofeuk dans le forum Silverlight
    R�ponses: 11
    Dernier message: 12/01/2012, 10h54
  3. R�ponses: 3
    Dernier message: 01/06/2009, 16h49
  4. Ti-89 qui ne se lance plus
    Par Fab_Fab dans le forum Mobiles
    R�ponses: 4
    Dernier message: 27/02/2008, 08h44

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