2009-10-19 3 views
3

숨겨진 요소로 저장된 메타 데이터에 따라 항목 목록 (<li>...</li>)을 정렬 할 수있는 jQuery 플러그인이 있습니까? 예를 들어 모든 목록 항목에는 두 개의 숨겨진 입력이 있습니다 (authoryear). 숨겨진 요소를 사용하여 목록을 정렬하고 싶습니다. jQuery 용 플러그인을 사용할 준비가되었는지 궁금합니다. 지금까지는 그런 플러그인을 찾지 못했습니다. 내가 찾은 유일한 것은 테이블 정렬을위한 것입니다. 여기목록 정렬을위한 jQuery 플러그인이 있습니까?

<ul> 
    <li>Position 1 
    <input type="hidden" name="author" value="Peter"/> 
    <input type="hidden" name="year" value="2004"/> 
    </li> 
    <li>Position 2 
    <input type="hidden" name="author" value="John"/> 
    <input type="hidden" name="year" value="2005"/> 
    </li> 
    <li>Position 3 
    <input type="hidden" name="author" value="Tony"/> 
    <input type="hidden" name="year" value="2006"/> 
    </li> 
</ul> 
+3

유의하시기 바랍니다 "UL"스탠드로 "Unordered List": D –

+0

하하, 그건 사실입니다. 그러나이 목록은 항목에 번호를 매기는 의미로 정렬되지 않습니다. – czuk

답변

1

당신은 갈 : http://www.wrichards.com/blog/2009/02/jquery-sorting-elements/

편집 :

<ul> 
    <li>Position 1 
    <input type="hidden" name="author" value="Peter"/> 
    <input type="hidden" name="year" value="2004"/> 
    </li> 
    <li>Position 2 
    <input type="hidden" name="author" value="John"/> 
    <input type="hidden" name="year" value="2005"/> 
    </li> 
    <li>Position 3 
    <input type="hidden" name="author" value="Tony"/> 
    <input type="hidden" name="year" value="2006"/> 
    </li> 
</ul> 

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script> 

<script type="text/javascript"> 
    jQuery.fn.sort = function() { 
     return this.pushStack([].sort.apply(this, arguments), []); 
    }; 

    function mySorter(a,b){ 
     return $(a).find("[name=author]").val() > $(b).find("[name=author]").val() ? 1 : -1; 
    }; 

    $(document).ready(function(){ 
     $('ul li').sort(mySorter).appendTo('ul'); 
    }) 

</script> 

내가에서 적응 고정 오류가 발()와 'UL'

+0

@Lance ~ 멋진 직장, 나는 이걸 건너 봤고 예상대로 예상대로 작동합니다! – Breadtruck

관련 문제