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 :

Problème d'exécution incorrecte sous ie


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 155
    Par défaut Problème d'exécution incorrecte sous ie
    Bonjour, j'ai ecrit un ti script qui marche sous firefox mais pas sous ie. Je ne comprend pas pourquoi. Apparemment, il est valide selon JSlint. Aucune erreur signalée mais le code effectué ne fait pas ce que je veux sous ie.

    Voici mon javascript :
    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
     
    function disable_doublons(tableau_check, tableau_res, class_css_decalage)
    {
    	var tableau = Array();
    	var i = 0;
    	if(class_css_decalage !== undefined && class_css_decalage != "decale_niveau_1")
    	{
    		for(i=0 ; i<tableau_check.length ; i++)
    		{
    			var une_checkbox = tableau_check[i];
    			var cellule = tableau_res.rows[parseInt(une_checkbox.value, 10)].cells[3];
    			var decalage = cellule.className;
    			// si sous-ensemble on d?sactive les doublons
    			if(decalage != "decale_niveau_1")
    			{
    				// si il est deja ds le tableau alors c'est un doublon et on le d?sactive
    				// sinon on ajoute au tableau
    				if(recherche_dans_tableau(tableau, cellule.textContent))
    				{
    					une_checkbox.disabled = 1;
    				}
    				else
    				{
    					tableau.push(cellule.textContent);
    				}
    			}
    		}
    	}
    }
     
     
    function disable_all_doublons_on_load()
    {
    //	var tableau_check = document.forms['formulaire_tableau_resultats'].elements['checkbox_fusionner[]'];
    	var tableau_check = document.forms.formulaire_tableau_resultats.elements['checkbox_fusionner[]'];
    	var tableau_res = document.getElementById('tableau_resultats');
     
    	if(tableau_check !== undefined)
    	{
    		disable_doublons(tableau_check, tableau_res, "decale_niveau_2");
    	}
    }
     
     
    function recherche_dans_tableau(tableau, valeur)
    {
    	var i = 0;
    	while (i < tableau.length)
    	{
    		if (tableau[i] == valeur)
    		{
    			break;
    		}
    		else
    		{
    			  i++;
    		}
    	}
    	if (i == tableau.length)
    	{
    		return false;
    	}
    	else
    	{
    		return true;
    	}
    }
    je lance disable_all_doublons_on_load au chargement de la page.

    voici un bout du html :
    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
     
    <form name="formulaire_tableau_resultats" method="POST" action="/sc_sociales/crhisco/dipou/test/admin/mots_cles.php">
    	<table id="tableau_resultats" summary="tableau de résultats">
    		<tr>
    			<th class="colonne_choix"><a href="javascript:envoyer(&quot;mots_cles.php?page=1&amp;action=modifier&amp;etape=1&quot;)">Modifier</a></th>
    			<th class="colonne_choix"><a href="javascript:envoyer(&quot;mots_cles.php?page=1&amp;action=supprimer&amp;etape=1&quot;)">Supprimer</a></th>
    			<th class="colonne_choix"><a href="javascript:envoyer(&quot;mots_cles.php?page=1&amp;action=fusionner&amp;etape=1&quot;)">Fusionner</a></th>
    			<th>Mots-clés</th>
     
    		</tr>
    		<tr>
    			<td class="colonne_centree"><input type="radio" name="tableau_resultats_radio" value="1" /></td>
    			<td class="colonne_centree"><input type="checkbox" name="checkbox_supprimer[]" value="1" /><!--afficher--></td>
    			<td class="colonne_centree"><input type="checkbox" name="checkbox_fusionner[]" value="1" onclick="javascript:montrer_selection_possible()"/><!--afficher--></td>
    			<td class="decale_niveau_1"><a href="mots_cles.php?action=modifier&amp;page=1&amp;etape=1&amp;ancien_mot_cle=aaaeza%27rez%27r%27ez%27%E9%5Cfd%3C%3E" class="mot_normal">aaaeza'rez'r'ez'é\fd&lt;&gt;</a></td>
    		</tr>
                    <tr>
    			<td class="colonne_centree"><input type="radio" name="tableau_resultats_radio" value="20" /></td>
    			<td class="colonne_centree"><input type="checkbox" name="checkbox_supprimer[]" value="20" /><!--afficher--></td>
    			<td class="colonne_centree"><input type="checkbox" name="checkbox_fusionner[]" value="20" onclick="javascript:montrer_selection_possible()"/><!--afficher--></td>
    			<td class="decale_niveau_2"><a href="mots_cles.php?action=modifier&amp;page=1&amp;etape=1&amp;ancien_mot_cle=A%E9ronautique" class="mot_normal">Aéronautique</a></td>
    		</tr> 
                   <tr>
    			<td class="colonne_centree"><input type="radio" name="tableau_resultats_radio" value="20" /></td>
    			<td class="colonne_centree"><input type="checkbox" name="checkbox_supprimer[]" value="20" /><!--afficher--></td>
    			<td class="colonne_centree"><input type="checkbox" name="checkbox_fusionner[]" value="20" onclick="javascript:montrer_selection_possible()"/><!--afficher--></td>
    			<td class="decale_niveau_2"><a href="mots_cles.php?action=modifier&amp;page=1&amp;etape=1&amp;ancien_mot_cle=A%E9ronautique" class="mot_normal">Aéronautique</a></td>
    		</tr>
    		<tr>
    			<th class="colonne_choix"><a href="javascript:envoyer(&quot;mots_cles.php?page=1&amp;action=modifier&amp;etape=1&quot;)">Modifier</a></th>
     
    			<th class="colonne_choix"><a href="javascript:envoyer(&quot;mots_cles.php?page=1&amp;action=supprimer&amp;etape=1&quot;)">Supprimer</a></th>
    			<th class="colonne_choix"><a href="javascript:envoyer(&quot;mots_cles.php?page=1&amp;action=fusionner&amp;etape=1&quot;)">Fusionner</a></th>
    			<th>Mots-clés</th>
    		</tr>
    	</table>
    </form>
    Si vous voyez une erreur dans mon javascript, n'hésitez pas.

    Sinon quelqu'un connaitrait un debugger pour ie qui permettrait de voir les valeurs des varaibles composées (objets, tableaux...). Car j'ai essayé microsoft script debugger mais c'est de la merde en puissance (tout comme le reste de leurs logiciels)

    Merci



    [edit] :
    Ce javascript permet d'empecher l'utilisateur de cocher les cases qui sont des doublons. Voila ce que ca donne sous firefox (comportement attendu) :


    et voila ce que j'ai sous ie :

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 155
    Par défaut
    petit up

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 155
    Par défaut
    Personne de motivé pour tester mon code sous ie?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    155
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 155
    Par défaut
    depuis, j'ai écrit d'autres scipts et ils marchent sous firefox par contre sous ie ils font nimp. Pourtant pas d'erreur apparemment. Quelqu'un pourrait me dire pourquoi mes scripts ont un comportement différent sous ie ???

  5. #5
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Bouge pas...

  6. #6
    Membre éclairé Avatar de linar009
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    497
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 497
    Par défaut
    Au lieu de : tableau_check !== undefined

    Essaie :

    typeof tableau_check != 'undefined'

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. problème d'exécution sous l'invite de commande
    Par gnocki dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 23/11/2006, 11h43
  2. problème d'exécution de requête sous VBA?
    Par jessy212 dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 26/08/2006, 18h48
  3. [Système] Problème d'exécution DOS sous PHP
    Par chtichokoko dans le forum Langage
    Réponses: 7
    Dernier message: 28/04/2006, 16h26
  4. problème d'exécution d'un report sous oracle 10g
    Par seure dans le forum Reports
    Réponses: 1
    Dernier message: 22/03/2006, 17h47
  5. Réponses: 5
    Dernier message: 19/04/2005, 08h50

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