2016-02-24 1 views
2

J'ai un problème dans mon projet. J'utilise des tables de données angulaires. Alors que le tri, si j'ai données pour une colonne comme 1.4, 1.5, 10, 2.4 je dois le retourner comme 1.4, 1.5, 2.4, 10. Mais je reçois comme 1.4, 1.5, 10, 2.4. Il ne considère que le premier caractère, je suppose.Le tri ne fonctionne pas selon les besoins dans angular-dataTables

Y at-il une solution pour cela? Voici l'extrait de code ci-dessous.

$scope.dtOptions = { paging: false, searching: false }; 
$scope.dtColumnDefs = [ 

]; 

Je ne sais pas ce que je dois écrire dans defs colonne pour le tri

Répondre

1

Je suppose une valeur quelque part dans la colonne convertit en un nombre illégal et par ce tournant du type détecté automatiquement dans le tri alpha. Forcer le type de tri de la colonne en définissant type - num est pour le numéro:

$scope.dtColumns = DTColumnBuilder.newColumn(0) 
            .withOption('type', 'num') //<--- 
            .withTitle('#') 

Démo ->http://plnkr.co/edit/teKt4xgTWD98IfBc2dNb?p=preview

Essayez un commentaire .withOption('type', 'num') sur ..


Si vous vous interrogez sur la syntaxe est la même que

$scope.dtColumnDefs = [ 
    { targets: 0, type: 'num', title: '#' } 
]; 
+1

J'ai utilisé le plugin naturel et au lieu de num j'ai passé naturel parce que j'ai des nombres, des nombres décimaux ainsi que des chiffres alpha – sri

+0

@sn, oui - c'est encore mieux. – davidkonrad

+0

@sri, ceci est un problème CSS, vous pouvez facilement l'empêcher - voir http://stackoverflow.com/questions/9421551/how-do-i-remove-all-default-webkit-search-field-styling et similaire réponses. – davidkonrad