jQuery对table排序

  <script>
        //col对应列,cmp两数比较方法,返回值为TRUE,FALSE
        function sort(col, cmp) {          
            var table = $("#test")//获取table
            var trs = table.find("tr");//找到所有行
            var max;
            var index;
            var tmp;
            var arr = new Array();
            for (i = 0; i < trs.length; i++) {
                arr[i] = i;
            }
            //第一行为列头,不在排序中(选择排序)
            for (i = 1; i < trs.length; i++) {
                max = trs.eq(arr[i]).find("td").eq(col).text();
                index = i;
                for (j = i + 1; j < trs.length; j++) {
                    if (cmp(trs.eq(arr[j]).find("td").eq(col).text(), max)) {
                        max = trs.eq(arr[j]).find("td").eq(col).text();
                        index = j;
                    }
                }
                tmp = arr[i];
                arr[i] = arr[index];
                arr[index] = tmp;
            }
            for (i = 1; i < trs.length; i++) {
                //alert(trs.eq(i-1).find("td").eq(col).text());
                trs.eq(arr[i - 1]).after(trs.eq(arr[i]));
            }
        }

        function intCmp(a, b) {
            if (parseInt(a) < parseInt(b))
                return true;
            return false;
        }
        function stringCmp(a, b) {
            if (a > b)
                return true;
            return false;
        }
    </script>

 

posted on 2014-06-18 20:31  jec  阅读(560)  评论(0编辑  收藏  举报

导航