[JavaScript] JQuery를 이용한 Drag Drop 리스트 순서변경


dd8b9164e328f2c1e534e53b6016b8cd.png
위 리스트 형태를 드래그 드랍을 이용하여 순서를 변경할 수 있다.


ul 과 li 태그는 그대로 사용하는 것이 무방하다. ^.^


//Drag Drop 순서 바꾸기를 위한 태그

$irDataHtml .= '<div style="display:none;"><input class="disp-order" data-id="'.$irData['no'].'" data-order="'.$irDispIdx.'" data-reorder="'.$irDispIdx.'" value="'.$irData['no'].'-'.$irDispIdx.'"></div>';


실제 DB에 order를 저장하고 다음에는 Query시 Order ASC 형태로 쿼리하면 된다.

<script>
// Drag Drop 순서 바꾸기
$(function (){
$('#ir-data-list').sortable({
stop: function (event, ui) {
reorder();
}
});
$('#ir-data-list').disableSelection();
});

function reorder() {
$("#ir-data-list .ir-data-wrapper").each(function(i, box) {
var li_target = $(box).find(".disp-order");
var li_order = li_target.data('id') + '=' + (i+1);
li_target.data('reorder',(i+1));
li_target.val(li_order);
$('[data-action="reorderUpdate"]').css('display','block');
});
}

$('[data-action="reorderUpdate"]').on('click', function (e) {

var orderUpdateInfo = '';
var li_target ,li_order;
$("#ir-data-list .disp-order").each(function() {
li_target = $(this);
li_order = li_target.data('order');
if (li_order != li_target.data('reorder')) {
orderUpdateInfo += (li_target.val() + ',');
}
});

alert(orderUpdateInfo);

var sO = new Object();
sO.cmd = 'ir.list.order.update';

sO.orderUpdateInfo = orderUpdateInfo;
console.log(sO);
var url = "<?php echo site_url('IpsAjax/apiCall'); ?>";
___ajax(url,sO,0,null);
});
</script>
0
0
이 글을 페이스북으로 퍼가기 이 글을 트위터로 퍼가기 이 글을 카카오스토리로 퍼가기 이 글을 밴드로 퍼가기
captcha
자동등록방지 숫자입력

웹개발

번호 제목 글쓴이 날짜 조회수
82 [PHP] empty vs is_null vs is_set 비교 최고관리자 09-11 1,608
81 [Font] Every Font Awesome 4.7.0 Icon, CSS Class, & Unicode 최고관리자 08-19 1,620
80 [PHP] 문자열을 구분자로 구분하여 배열로 만들때 whitespace trim시키기 최고관리자 07-29 1,580
79 [PHP] $_SERVER['SERVER_NAME'] vs $_SERVER['HTTP_HOST'] 최고관리자 07-23 1,973
78 [css] Layout을 제대로 하고 싶다면 Flex 와 Grid를 배워보자 최고관리자 07-20 2,000
77 [PHP] define 중복으로 인한 Internal Server Error 500 최고관리자 07-16 1,512
76 [MySQL] Procedure & View 확인 최고관리자 05-25 1,517
75 [JavaScript] JQuery를 이용한 Drag Drop 리스트 순서변경 최고관리자 05-21 3,297
74 [JavaScript] defer 와 async 최고관리자 05-14 1,591
73 [JavaScript] 홈페이지에 날개를 달자 -2 최고관리자 04-26 1,551
72 [HTML] URL 사용 규칙 최고관리자 03-30 1,583
71 [JS] 자바스크립트 쿠키 클래스 최고관리자 03-19 1,610
70 [MySql] mysql error 메세지 모음 최고관리자 03-11 3,396
69 [PHP] TCP Socket Server +2 최고관리자 03-05 3,455
68 [JS] 문자열로 전송된 함수명을 실행하는 방법 최고관리자 02-26 2,015
67 [Javascript] 홈페이지에 날개를 달자 - Animation & Scrolll 효과 Plugin 최고관리자 02-21 1,565
66 [Form] Submit 버턴 만들어 입력데이타 검사하고 Submit 하기. 최고관리자 01-13 1,557
65 [MySQL] Join 걸어서 Update하기 최고관리자 01-07 1,710
64 [Docker] MedDream DICOM Viewer for Orthanc PACS server 최고관리자 01-05 2,184
63 [Docker] 도커 도메인 여러개 사용하기 (Docker multi Domain) (웹서버 여러개) 최고관리자 01-05 6,396