2012-05-10 1 views
0

jquery sortable을 사용하여 드래그하여 재정렬 할 수있는 정렬 된 항목 목록을 사용하고 있습니다. 사용자가 드래그 앤 드롭하면 정렬 가능한 함수가 실행되고 모든 항목이 업데이트되고 0-9 사이의 값이 지정됩니다.내 jquery를 모든 페이지로드시 정렬 할 수 있습니까?

그러나 목록에 항목을 삽입하거나 삭제할 수 있습니다. 삭제가 발생하면 순서 (0-1-2-3-4 - 6-7-8)에 간격이 있습니다. 항목을 추가 할 때 목록 항목이 계산되고 목록의 맨 아래에 1이 추가되어 순위로 설정됩니다. 순서는 0에서 시작하기 때문에 끝에있는 숫자도 건너 뜁니다. (7,8,10)

하지만 사용자가 항목을 끌어다 놓으면 전체 목록이 적절한 순서로 재 배열되고 모든 것이 정상입니다. 그러나 그때까지는 명령이 어지럽 힙니다.

그래서 항목을 이동하지 않고 jquery 정렬 업데이트를 실행하는 방법이 있는지 궁금합니다. 그것은 업데이 트를 실행하지만 마치 같은 장소에 모든 것을 보관하는 것처럼,하지만 내 주문 문제를 해결할 것입니다. 사용자가 방금 행을 추가하거나 행을 삭제하면 함수가 실행되고 순서가 올바르게 설정되도록 설정합니다.

+0

나는 JQuery와 정렬 그래서 대답으로 이것을 넣어 못해 사용하지 않은,하지만 난 그냥 문서에보고했고 나는 호출하여 당신은 당신이 원하는 것을 할 수 있다고 생각' .sortable ("새로 고침"). [문서 참조] (http://jqueryui.com/demos/sortable/#method-refresh) – AndrewR

답변

0

변경 가능성이있는 목록을 정렬 할 때마다 정렬 할 필요가 있다고 생각합니다.

.sortable("refresh")

http://docs.jquery.com/UI/Sortable#method-refresh

+0

그게 내가 생각한 것입니다. 그러나 그것은 작동하지 않는 것 같습니다. 이것은 내가 현재 가지고있는 것입니다 ... '$ ('# test-list'). sortable ('refresh'); $ ("# info") .load ("process-sortable.php?"+ order); ' – patricko

+0

아마 목록에 항목을 추가하는 방법을 자세히 설명 할 수 있습니다. 쿼리 문자열에서 항목을 가져 오는 것 같습니다. – ephemeron

관련 문제