根据ul里li中文本排序

问题描述

根据ul里li中文本排序
 <html>
<head>
<title></title>
</head>
<body>
<ul id="ul1">
<li>2</li>
<li>5</li>
<li>1</li>
<li>4</li>
<li>3</li>
</ul>
</br>
<input type="button" id="SortAdd" On_click="SortAdd"/>顺序
<input type="button" id="Sortjian" On_click="Sortjian"/>倒序
</body>
</html>

编写jQuery脚本点击“顺序”按钮实现顺序排列,点击“逆序”实现逆序排列

解决方案

 <!DOCTYPE html>
<html>
<head>
<script src="/jquery/jquery-1.11.1.min.js">
</script>
<script>
function Sortable(ul,isResverse){
  var li_list=$('li',ul);
  var arr=[];
  for(var i=0;i<li_list.length;i++){
     arr[arr.length]=li_list[i].innerHTML;
  }
  arr.sort();
  for(i=0;i<arr.length;i++){
     if(isResverse){
       li_list[i].innerHTML = arr[arr.length-1-i];
     }else{
       li_list[i].innerHTML = arr[i];
     }
  }
}
function orderli(f){
  ul = $('#ul1');
  Sortable(ul,f)
}
</script>
</head>
<body>
<ul id="ul1"> <li>2</li> <li>5</li> <li>1</li> <li>4</li> <li>3</li></ul>
<button onclick="orderli(0)">顺序</button>
<button onclick="orderli(1)">倒序</button>
</body>
</html>

解决方案二:

无非就是颠倒下先后位置,不过如你的用户名所说,“SQL数据库 ”做起来更简单。

解决方案三:

  <html>
<head>
<title></title>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>
</head>
<body>
<ul id="ul1">
<li>2</li>
<li>5</li>
<li>1</li>
<li>4</li>
<li>3</li>
</ul>
</br>
<input type="button" id="SortAdd" onclick="Sort()" value="顺序"/>
<input type="button" id="Sortjian" onclick="Sort(true)" value="倒序"/>
<script>
    function Sort(desc) {
        var li = $('#ul1 li').get();
        li.sort(function (li1, li2) { return desc ? parseInt(li2.innerHTML) - parseInt(li1.innerHTML) : parseInt(li1.innerHTML) - parseInt(li2.innerHTML) });
        $('#ul1').append(li);
    }
</script>
</body>
</html>

解决方案四:

上面写的那么复杂干吗,字符串能够直接比较大小的字符串能够直接比较大小的

 bool desc=false;
var lis = $('li');
lis.sort(function(a,b){
    var v ;
        if($(a).html()>$(b).html())
        {
            v=1;
        }
        else
        {
            v=-1;
        }
        if(desc)
        {
            v=-v;
        }
        return v;
});
时间: 2025-01-21 00:32:26

根据ul里li中文本排序的相关文章

css实现li中文本超出行宽自动隐藏

li中的文本超出行宽自动隐藏,在一些新闻类的列表应用中还是比较实用的,具体的实现css样式如下,感兴趣的朋友可以参考下,希望对大家有所帮助     复制代码 代码如下: .aa{white-space:nowrap; text-overflow:ellipsis; overflow: hidden; }

DIV CSS网页布局中常用的列表元素ul ol li dl dt dd释义

核心提示:DIV CSS网页布局中常用的列表元素ul ol li dl dt dd释义 ol 有序列表 <ol><li>--</li><li>--</li><li>--</li></ol> 表现为 1--2--3-- ul 无序列表,表现为li前面是大圆点而不是123 <ul><li>--</li><li>--</li></ul> 很多人容

网页布局中常用的列表元素ul ol li dl dt dd讲解

网页 DIV CSS网页布局中常用的列表元素ul ol li dl dt dd释义,块级元素div尽量少用,和table一样,嵌套越少越好 ol 有序列表. <ol><li>--</li><li>--</li><li>--</li></ol> 表现为: 1--2--3-- ul 无序列表,表现为li前面是大圆点而不是123 <ul><li>--</li><li>-

隐藏-如判断ul 里面的li 个数 如果大于某个数则给多余的li添加Class

问题描述 如判断ul 里面的li 个数 如果大于某个数则给多余的li添加Class a b c d e f 问题是:现在ul里面总共有6个li(ps:li个数有可能变化的)但是我只要显示前面2个跟后面2个li,中间其余的li全部增加隐藏的class,这样子要怎么做? 解决方案 可以参考jquery的遍历函数:http://www.w3school.com.cn/jquery/jquery_ref_traversing.asp 写了一个类似的给你参照,根据这些遍历函数,肯定能够达到你想要的效果(引

tree-请问如何将html中两个或多个具有相同层次结构和内容的ul或li合并在一起?

问题描述 请问如何将html中两个或多个具有相同层次结构和内容的ul或li合并在一起? 合并前的HTML内容如下: <ul class="ul1"> <li> <p>中国</p> <ul class="ul2"> <li> <p>广东</p> <ul class="ul3"> <li> <p style="col

关于html中 ul li 中加入div(div位置随意设置)的问题

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

用ul、li标签创建css横向导航菜单示例

创建CSS样式文本导航条的最简单解决方法也许就是把所有的链接都放在一行文本里,这种方法看起来很合理也很直观.但问题在于把所有的链接都放在一行文本 里就很难控制链接之间以及前后的空白.所以,为了避免所有的链接都挤在一起,你最后通常都不得不插入一些东西或者非换行的空白字符作为分隔,让这些文字分 离开来,不至于混在一起. 现在我们正常的做法是应用ul.li标签把链接作为无序列表(unordered list)来标识.再应用CSS样式对其进行控制,按我们预想的形式在容器中显示出来.对导航条使用无序列表似

javascript-用jquery先获取li中的内容,然后在span中输出

问题描述 用jquery先获取li中的内容,然后在span中输出 如图 我需要将每个大li标签里面选择好的li里面内容显示到上面span标签里面,点击选择了的li里面会加个class="selected",这个要用jquery来实现吗?要怎么写呢?本人js有点薄弱,希望能详细些 解决方案 楼主,你好,针对你的问题,想要实现其实也十分简单,我用你的问题截图,举一个简单的例子,里面有详细的注释,你先看,如果不懂的可以问我.下面这个是个简单的实现,还可以扩展功能,使他们适用于更多的地方.在下

php问题-php里css中的清除浮点问题

问题描述 php里css中的清除浮点问题 #head{border:1 solid red;width:100%;height:20;}ul{float:left;}#banner{float:left;}.clear{overflow:hidden;zoom:1;} 首页 首页 首页 首页 首页 首页 我写的这个程序为什么li中的那几个字不显示在规定的div块里而是出现在它的下方呢,是不是清除浮点搞错了啊,浮点换了几次都不成功,求教各位大神指点一下 相关文章 清除require载入的文件 ph