投票列表排序 - 默认,投票数

<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>投票列表排序 - 默认,投票数</title>
<script type="text/javascript" src="http://new-icon.ol-img.com/jslib/jquery-1.7.2.min.js"></script>
</head>
<body>
<div id="votebox">
    <dl rel="1">
        <dt>Name1</dt>
        <dd>votenum <em>1</em></dd>
    </dl>
    <dl rel="2">
        <dt>Name2</dt>
        <dd>votenum <em>11</em></dd>
    </dl>

    <dl rel="3">
        <dt>Name13</dt>
        <dd>votenum <em>61</em></dd>
    </dl>

    <dl rel="4">
        <dt>Name14</dt>
        <dd>votenum <em>6</em></dd>
    </dl>

    <dl rel="5">
        <dt>Name15</dt>
        <dd>votenum <em>14</em></dd>
    </dl>
    <dl rel="6">
        <dt>Name16</dt>
        <dd>votenum <em>19</em></dd>
    </dl>
</div>
<p>
<a href="javascript:;" id="defaultbtn">默认</a>
<a href="javascript:;" id="rankbtn">投票排序</a>
</p>

<script type="text/javascript">
$(function(){
    $("#defaultbtn").click(function() {
        setVoteboxData(‘default‘);
    });

    $("#rankbtn").click(function() {
        setVoteboxData(‘votenum‘);
    });

    function setVoteboxData(rankType) {
        rankType = rankType == ‘votenum‘ ? ‘votenum‘ : ‘default‘;

        voteCellsLength = $("dl").length;
        if(voteCellsLength > 0) {
            var voteCells = new Array();
            for(var i = 0; i < voteCellsLength; i++) {
                var relVal = $("dl:eq(" + i + ")").attr("rel");
                var tmpArr = new Array();
                tmpArr[‘data‘] = ‘<dl rel="‘ + relVal + ‘">‘ +  $("dl:eq(" + i + ")").html() + ‘</dl>‘;
                tmpArr[‘ranknum‘] = rankType == ‘votenum‘ ? parseInt($("dl:eq(" + i + ")").find(‘em‘).html()): parseInt(relVal);
                voteCells[i] = tmpArr;
            }
            // rank
            for(var i = 0; i < voteCellsLength; i++) {
                for(var j = i + 1; j < voteCellsLength; j++) {
                        if(voteCells[i][‘ranknum‘] < voteCells[j][‘ranknum‘]) {
                                var tmpVal = voteCells[i];
                                voteCells[i] = voteCells[j];
                                voteCells[j] = tmpVal;
                        }

                }
            }
            if(rankType == ‘default‘) {
                voteCells = voteCells.reverse();
            }
            var voteCellsStr = ‘‘;
            for(var i = 0; i < voteCellsLength; i++) {
                voteCellsStr += voteCells[i][‘data‘];
            }
            $("#votebox").html(voteCellsStr);
        }
    }
});

</script>
</body>
</html>
时间: 2024-10-03 10:57:54

投票列表排序 - 默认,投票数的相关文章

2018.09.22 列表排序

# -*- coding:utf-8 -*- # 排序默认按照 ASCII码 排序. # 符号在前,大写在后,小写再大写后面. # sort 排序 L1 = ['a','c','v','s','g','t','A','#','&',] L1.sort() print("结果:",L1) print("----- end -----") 结果: ['#', '&', 'A', 'a', 'c', 'g', 's', 't', 'v'] ----- en

python 列表排序方法reverse、sort、sorted基础篇

python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse()方法 将列表中元素反转排序,比如下面这样 >>> x = [1,5,2,3,4] >>> x.reverse() >>> x [4, 3, 2, 5, 1] reverse列表反转排序:是把原列表中的元素顺序从左至右的重新存放,而不会对列表中的参数进行排序

【python cookbook】【数据结构与算法】13.通过公共键对字典列表排序

问题:想根据一个或多个字典中的值来对列表排序 解决方案:利用operator模块中的itemgetter()函数对这类结构进行排序是非常简单的. # Sort a list of a dicts on a common key rows = [ {'fname': 'Brian', 'lname': 'Jones', 'uid': 1003}, {'fname': 'David', 'lname': 'Beazley', 'uid': 1002}, {'fname': 'John', 'lnam

如何在App中实现IM功能之七快速实现聊天列表排序模块——箭扣科技Arrownock

如何在App中实现IM功能 之七 快速实现聊天列表排序模块 一台设备由于用户的使用习惯差异,可能导致设备的时间和实际收发消息的时间不同,这里与大家分享利用anIM收发消息时,如何根据数据中的msgId和timestamp来进行排序. 实现逻辑 发消息时,我们需要调用anIM的sendMessage方法(同类方法还有sendBinary, sendMessageToTopic等等),这个方法有一个返回数据为messageId,即当前这一条聊天消息的唯一标识,我们需要将这个messageId保存下来

Python 列表排序方法reverse、sort、sorted详解

python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse()方法 将列表中元素反转排序,比如下面这样 1 2 3 4 >>> x = [1,5,2,3,4] >>> x.reverse() >>> x [4, 3, 2, 5, 1] reverse列表反转排序:是把原列表中的元素顺序从左至右的重新存放,而不会对列表

python_生成随机数与列表排序

1.  列表排序可采用两种方法 sorted(list) 直接改变list 调用list的方法 list.sort 2. random.randint(a,b) 生成大于等于a小于等于b的整数 random.random() 生成一个在[0,1)区间上的实数 random.choice(sequence) sequence泛指list.tuple.字符串等 random.randrange(start,stop,step) step务必给出,在本次实践中,如果不给出将会随机给一个值且极大可能为负

算法——列表排序和排序算法

一.列表排序 排序就是将一组“无序”的记录序列调整为“有序”的记录序列. 列表排序:将无序列表变为有序列表. 输入:列表 输出:有序列表 两种基本的排序方式:升序和降序. python内置的排序函数:sort(). 二.常见排序算法 名称 复杂度 说明 备注 冒泡排序Bubble Sort O(N*N) 将待排序的元素看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮 插入排序 Insertion sort O(N*N) 逐一取出元素,在已经排序的元素序列中从后向前扫描,放到适当的位置 起

Python之在函数中使用列表作为默认参数

??本文将介绍笔者在工作中遇到的Python的一个坑,那就是使用列表作为默认参数. ??我们知道,在Python中,列表(list)是可变对象,所以列表的内容可能会在函数内改变.另一个需要注意的是,使用列表作为函数的默认参数时,列表的内容变化情况. ??首先,我们看以下的代码例子: def add(x, lst=[]): if x not in lst: lst.append(x) return lst def main(): list1 = add(1) print(list1) list2

Python 中的列表排序函数

sorted(iterable, cmp=None, key=None, reverse=False) L.sort(cmp=None, key=None, reverse=False) iterable:是可迭代类型;cmp:用于比较的函数,比较什么由key决定,有默认值,迭代集合中的一项;key:用列表元素的某个属性和函数进行作为关键字,有默认值,迭代集合中的一项;reverse:排序规则. reverse = True 或者 reverse = False,有默认值.返回值:是一个经过排序