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 :

Trier un tableau selon ses clés sous Internet Explorer


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 89
    Points : 56
    Points
    56
    Par défaut Trier un tableau selon ses clés sous Internet Explorer
    Bonjour à tous,

    Ca fait plusieurs heures que je cherche une solution pour trier un objet ou un array associatif JavaScript selon ses clés sans succés... Du moins cela marche sous chrome mais pas sous internet explorer.

    Chrome m'affiche :
    et ie :
    J'imagine que je ne suis pas le premier à avoir ce problème...

    Voici un code que j'ai fait pour l'exemple :
    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
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
     
    <script>
     
    a = new Array();
    a[20] = 20;
    a[3] = 3;
    a[1] = 1;    
    a[2] = 2; 
    a[10] = 10;
     
    function keys(obj)
    {
        var keys = [];
     
        for(var key in obj)
        {
            keys.push(key);
        }
     
        return keys;
    }
     
    a = keys(a).sort();
     
    </script>
    </head>
     
    <body>
    <script>
    	for(k in a) {
    		document.write(a[k]+'<br/>');
    	}
    </script>
    </body>
    </html>
    Merci pour votre aide !

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 89
    Points : 56
    Points
    56
    Par défaut
    Je pense que je vais trouver la réponse ici :
    http://www.elated.com/articles/sorti...script-arrays/

    Non ça ne convient toujours pas à mon exemple :S Quelqu'un peut m'aider ? J'ai passé une journée presque sur ce problème pour rien

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 89
    Points : 56
    Points
    56
    Par défaut
    Bon j'ai trouvé une solution, j'ai fait une fonction mais je suis sure qu'il doit y avoir mieux que ça, surtout que je suis totalement novice..

    Fonction pour trier un tableau associatif selon ses clés numériques en JavaScript (compatible tous navigateurs a priori) (édité; merci SpaceFrog ) :

    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
     
    function ksortassoc ( assocArray )
    {
    	var a = [];
    	var myArray = [];
     
    	for(k in assocArray) {
    		a.push(k);
    	}
     
    	a.sort( function ( a, b ) { return a*1 - b*1; } );
     
    	for(c in a) {
    		vala = a[c];
    		myArray[vala] = assocArray[vala];
    	}
     
    	return myArray;
     
    }

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 637
    Points : 66 661
    Points
    66 661
    Billets dans le blog
    1
    Par défaut
    par sécurité tu peux t'assurer du resultat de la comparaison numérique et non alphabétique:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    a.sort( function ( a, b ) { return (a*1 - b*1); } );
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 89
    Points : 56
    Points
    56
    Par défaut
    Merci beaucoup SpaceFrog

    Je clos donc le sujet.

    Je te contacterai par MP concernant un outil gratuit que je vais mettre en ligne, si tu es intéressé.

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

Discussions similaires

  1. Trier un tableau selon une colonne
    Par josse34 dans le forum Langage
    Réponses: 14
    Dernier message: 26/10/2013, 15h50
  2. [MySQL] Trier un tableau selon un select
    Par lekunfry dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 02/09/2009, 13h44
  3. [HTML] Problème de tableau sous Internet Explorer
    Par BBeus dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 11/04/2008, 15h52
  4. Problème tableau/colspan sous internet explorer
    Par julaf dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 02/01/2008, 22h06
  5. Texte qui disparait sous internet explorer.
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 14/08/2005, 02h55

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