使用javascript或jquery对li元素排序

使用javascript或jquery对li元素排序,javascript,jquery,Javascript,Jquery,在我的页面中,我有以下内容。我需要使用javascript来整理它 <li class="cat2 lang1">Hello</li> <li class="cat2 lang1">Hello</li> <li class="cat1 lang2">Hello</li> <li class="cat3 lang3">Hello</li> 这很好用。但是我需要使用lang和cat组合对列表进行排序 i

在我的页面中,我有以下内容。我需要使用javascript来整理它

<li class="cat2 lang1">Hello</li>
<li class="cat2 lang1">Hello</li>
<li class="cat1 lang2">Hello</li>
<li class="cat3 lang3">Hello</li>
这很好用。但是我需要使用lang和cat组合对列表进行排序

ie如果我选择cat1作为类别,选择lang2作为语言,那么它可能会显示第三个li


我想你明白我的意思了。对不起,解释得不好。“帮助我”pls

似乎没有根据选择的cat和lang对您想要显示/隐藏的项目进行排序。以下功能将满足您的需要:

$("#movieFeatureFilter span#selGenre .subMenus li").click(function () {

   /*GET cat AND lang FROM DROPDOWNS*/

    var cat = $("#c").val(),
        lng = $("#l").val();

    $("#<ID OF UL> li").filter(function () {
        $this = $(this);
        if ($this.hasClass(cat)) {
            if (!$this.hasClass(lng)) {
                $this.hide();
            } else {
                $this.show();
            }
        } else {
            $this.hide();
        }
    });
});
登记


演示:

如何选择猫和狼?我有猫和狼的下拉菜单。看到了吗for@Arun约翰。谢谢兄弟,这就是我要找的。我会把它作为答案贴出来的
$("#movieFeatureFilter span#selGenre .subMenus li").click(function () {

   /*GET cat AND lang FROM DROPDOWNS*/

    var cat = $("#c").val(),
        lng = $("#l").val();

    $("#<ID OF UL> li").filter(function () {
        $this = $(this);
        if ($this.hasClass(cat)) {
            if (!$this.hasClass(lng)) {
                $this.hide();
            } else {
                $this.show();
            }
        } else {
            $this.hide();
        }
    });
});
var $items = $('ul li'), $cat = $('#cat'), $lang = $('#lang');
$('#cat, #lang').change(function(){
    var cat = $cat.val(), lang = $lang.val(), $filtered = $items;
    if(cat){
        $filtered = $filtered.filter('.' + cat);
    }
    if(lang){
        $filtered = $filtered.filter('.' + lang);
    }
    $items.not($filtered).hide();
    $filtered.show()
})