2013-06-28 4 views
0

옵션이있는 HTML 항목이 있습니다. JS 코드 :jQuery에서 내 옵션을 정렬하지 않습니다.

var inviteds = $('#clientMenuEvents_edit select[name="everybody"]'); 
inviteds.find('option').sort (function(a,b) { 
    return a.innerHTML.toLowerCase() > b.innerHTML.toLowerCase() ? 1 : -1; 
}); 

내가 a.innerHTML.toLowerCase() 문자열을 제공하는 기능을 디버깅,하지만 그냥 목록을 주문할 수 없습니다 아무 일도 발생하지 않습니다. 모두는 그것을 좋아한다 - 그러나 나는 아무것도하지 않은 것처럼 행동한다.

+0

사용자가 설정 한 결과 또는 DOM에서 요소의 순서를 정렬 하시겠습니까? –

+0

옵션. 나는 당신이 "dom의 요소"를 의미했다고 생각합니다. –

답변

4

요소를 정렬하지만 정렬은 DOM이 아닌 요소 집합에만 영향을 미칩니다. .append()을 사용하여 세트를 다시 select 요소에 배치하면 정렬 된 순서로 추가됩니다.

inviteds.find('option').sort (function(a,b) { 
    return a.innerHTML.toLowerCase() > b.innerHTML.toLowerCase() ? 1 : -1; 
}).appendTo(inviteds); 

데모 : http://jsfiddle.net/CAZCf/1/

관련 문제