2013-06-06 2 views
1

jQuery UI를 사용하여 정렬 할 수없는 목록이 있습니다. 모든 종류 또는 재 정렬시 1-6 (또는 가장 높은 숫자)이되도록 데이터 우선 순위 속성이 필요합니다. 그대로 서서 그것을로드시 설정하고 정렬 후에 다시 설정하지 않습니다.JQuery, each() with UI.sortable()

나는 당신을 위해 바이올린을 만들었습니다. 그것은 아마 쉬운 일이지만, 나는 그것을 이해할 수 없다. > (

$("#priority-list").sortable(); 
    $("#priority-list li").each(function(i){ 
    $(this).attr("data-priority", "pri-" + (i + 1)); 
}); 

감사합니다!

link for jsfiddle

는 일종의 후 우선 순위를 수행하는 코드를 실행하지 않는 것 같습니다
+1

당신은 c가 아닙니다. 마지막 줄을 모두 채우고. 함수를 작성하고 속성을 다시 계산하기 위해 행을 이동할 때마다 함수를 호출해야합니다. doc, "change"이벤트를보십시오. http://api.jqueryui.com/sortable/#event-change – TCHdvlp

답변

2

.

http://jsfiddle.net/3CWBt/

$(function(){ 

    $("#priority-list").sortable({ 
     stop: setPriority 
    }); 
    setPriority(); 

    function setPriority() { 
     $("#priority-list li").each(function(i){ 
      $(this).attr("data-priority", "pri-" + (i + 1)); 
     }); 
    } 

}); 
+0

아하, 물론. 나는 그것이 그와 같은 것이었다는 것을 알았다, 고마워! – user2459900

0
$("#priority-list").sortable({ 
    stop : function(event, ui) { 
     $("#priority-list li").each(function(i){ 
      $(this).attr("data-priority", "pri-" + (i + 1)); 
     }); 
    } 
});