Maison > interface Web > js tutoriel > Exemple détaillé de la façon dont jQuery trie une table

Exemple détaillé de la façon dont jQuery trie une table

黄舟
Libérer: 2017-08-11 13:59:20
original
1791 Les gens l'ont consulté

Cet article présente principalement un exemple de démonstration de tri d'une table par jquery. Il explique le processus d'opération en détail en ajoutant l'attribut personnalisé data-sort-field-ftime et en ajoutant l'événement onchange dans l'en-tête de la table. à cela

Récemment, le tableau du rapport doit être trié. Le traitement frontal est le suivant :

Tout d'abord, ajoutez un attribut personnalisé data-sort-field-ftime à chaque ligne de tr lorsque le front est affiché. la page est chargée et la valeur de l'attribut est le champ à trier. La valeur (la mienne est constituée de chiffres pour plus de commodité) :


$.each(jsonarray, function(i, obj) {
          troptions += "<tr data-sort-field-ftime=\""+obj.paiming+"\">";          
          troptions += "<td>"+(Number(obj.cdsPrem)/unitnow).toFixed(dotnow)+"</td>";
          troptions += "<td>"+(Number(obj.cdjPrem)/unitnow).toFixed(dotnow)+"</td>";
          troptions += "<td>"+(Number(obj.sumPrem)/unitnow).toFixed(dotnow)+"</td>";
          troptions += "<td>"+obj.paiming+"</td>";
          troptions += "</tr>";
      });
Copier après la connexion

Ajoutez un événement onchange à l'en-tête. de la table à trier, voici l'événement onchange :


//排序处理
  function changepm(){
    var sortType=$("#pm").val();
    var $trList = $("#ta tbody > tr");//获取现有tr对象
    //冒泡排序    
    for (var i = 0; i < $trList.length - 1; i++) {
      for (var j = 0; j < $trList.length - 1 - i; j++) {
        var value1 = parseInt($trList[j].attributes["data-sort-field-ftime"].nodeValue); 
        var value2 = parseInt($trList[j + 1].attributes["data-sort-field-ftime"].nodeValue);
        if (sortType === "asc" ? value1 > value2 : value1 < value2) {
          var $temp = $trList[j];
          $trList[j] = null;
          $trList[j] = $trList[j + 1];
          $trList[j + 1] = null;
          $trList[j + 1] = $temp;
        }
      }
    }           
    //返回排序后的tr集合
    //将原来的tr清空,再将排序后的tr插入到table的dom中
    console.log($trList);
    $trList.appendTo($("#ta > tbody").empty());
  }
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal