Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2062 connectés 

  FORUM HardWare.fr
  Programmation
  Javascript/Node.js

  (HELP ! ) Tri par ordre Alphabétique AJAX (Help ! )

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

(HELP ! ) Tri par ordre Alphabétique AJAX (Help ! )

n°2310469
wiskimo
Posté le 26-01-2018 à 16:28:28  profilanswer
 

Bonjour les amis !  
 :cry:  :cry:  
Depuis le code (voir dessous)  
Je voudrais trier le select par ordre alphabétique du Nom : (element.Nom)  
 
 
function selector(value, row, index) {
    var select_id = "X_select_" + row.id;
    var select =  $("<select/>", {"id":select_id}).append($("<option/>" , {"disabled":"disabled", "selected":"selected"}).val('').text('').html('-'));
    $.get("/planning-json/bind/json/mesListes/getListeSuivi.json?suiviId="+row.id, adresse(data){
        $.each(data, function(index, element){
            $("#" + select_id).append($("<option/>" ).val(element.id).text(element.Nom));
        });
    });
    return $("<p/>" ).append(select).html();
}
 
 
Milles merci !

mood
Publicité
Posté le 26-01-2018 à 16:28:28  profilanswer
 

n°2310475
MaybeEijOr​Not
but someone at least
Posté le 26-01-2018 à 18:05:59  profilanswer
 

Bonjour,

 

Pourquoi ne pas passer le contenu de data dans un array et effectuer un tri sur cet array puis parcourir ce dernier pour afficher tes options du select ?


Message édité par MaybeEijOrNot le 26-01-2018 à 18:06:08

---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.
n°2310495
wiskimo
Posté le 27-01-2018 à 16:45:55  profilanswer
 

Salut MaybeEijOrNot,
 
Merci pour ta rapide réponse!
 
Aurais tu un exemple de code pour que je puisse m'en inspirer ?
 
Thanks  :jap:

n°2310496
MaybeEijOr​Not
but someone at least
Posté le 27-01-2018 à 17:16:55  profilanswer
 

Euh non désolé mon clavier est en japonnais, du coup je ne peux pas écrire de code. :s


---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.
n°2310562
Twiddy
Posté le 31-01-2018 à 10:29:36  profilanswer
 

Alors la réponse m'intéresse parce qu'en ce moment j'ai un souci un peu près équivalent.
J'ai remarqué qu'un array associatif dont la key est un entier ne se tri pas comme j'aimerais. En gros si j'ai ça :
{ 3 : "Brazil", 1: "Canada", 2 : "USA" };

 

Quoi que je fasse, il me restitue toujours Canada, USA, Brazil même après avoir tenté un tri alpha sur les pays.

 

Alors que ça :
{ "trois" : "Brazil", "un" : "Canada", "deux" : "USA" };
me restitue Brazil, Canada, USA si je le tri...

 

Bref j'ai l'impression que le fait que la clé soit un entier change le fonctionnemnt de mon tableau. S'il y a moyen d'éviter ça, ça m'intéresse.


Message édité par Twiddy le 31-01-2018 à 10:30:31
n°2310579
MaybeEijOr​Not
but someone at least
Posté le 31-01-2018 à 12:01:54  profilanswer
 

Ne pas confondre tableau et objet.
 
Comme dit sur cette page : https://www.w3schools.com/js/js_arrays.asp il n'y a pas de tableau associatif en JS. On utilise des objets à la place et ça n'a donc pas de sens de trier un objet.
Il faut donc transformer son objet en tableau pour pouvoir le trier :
 

Code :
  1. var tab_object = {4:"Brazil", 2:"Canada", 3:"USA"};
  2. var tab_classic = [];
  3. for (var i in tab_object) {
  4.     tab_classic.push([tab_object[i], i]);
  5. }
  6. console.log(tab_object);
  7. console.log(tab_object.length);
  8. console.log(tab_classic.sort());
  9. console.log(tab_classic.length);


 
On remarquera que de la même manière que ça n'a pas de sens de trier un objet, on ne peut en déterminer une longueur.
Afin de garder en mémoire la clé on utilise un tableau multidimensionnel.

n°2310595
Twiddy
Posté le 31-01-2018 à 14:37:00  profilanswer
 

Han, c'est pour ça... :jap:
Même si c'est con parce qu'au final si je tente {"4":"Brazil", "2":"Canada", "3":"USA"}; il ne réagit pas comme si je lui mettais  {"d":"Brazil", "b":"Canada", "c":"USA"};


Message édité par Twiddy le 31-01-2018 à 15:09:09
n°2310630
MaybeEijOr​Not
but someone at least
Posté le 31-01-2018 à 18:56:39  profilanswer
 

Normalement il ne devrait pas du tout réagir, enfin si il devrait te retourner une erreur.
 
Je viens de tester chez moi, ça ne marche pas, tu ne peux pas faire de tri sur les propriétés d'un objet. Comment as-tu fait? :pt1cable:  
Sinon cela ne sert à rien de mettre des guillemets aux noms des propriétés des objets et normalement ce n'est pas non plus autorisé d'utiliser un nom commençant par un chiffre (mêmes règles que pour les variables).


---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.
n°2310657
Twiddy
Posté le 01-02-2018 à 10:24:12  profilanswer
 

Non mais laisse tomber, j'avais pas fait gaffe que dans le code, l'objet était transformé en enum... Et forcément, je ne pigeait plus rien :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Javascript/Node.js

  (HELP ! ) Tri par ordre Alphabétique AJAX (Help ! )

 

Sujets relatifs
help Game of drone - Codingame[Ajax] Récupèrer l'action lors d'événement après rechargement de page
CSS Galère responsive centrage HELP !!Ordre des tests dans un IF (SQL Server)
Comment envoyer formulaire ajax en cochant checkbox?[Ajax] Checker le changement d'un paragraphe actualisé en ajax
pb sauts de ligne $.ajax[Help] Compilation cross plateform (RaspberryPi / Ubuntu)
HELP modification gadget Rainmeter!Probleme AJAX et JEE/servlet
Plus de sujets relatifs à : (HELP ! ) Tri par ordre Alphabétique AJAX (Help ! )


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR