/*jslint white: true, browser: true, undef: true, nomen: true, eqeqeq: true, plusplus: false, bitwise: true, regexp: true, strict: true, newcap: true, immed: true, maxerr: 14 */
/*global window: false, REDIPS: true */
/* enable strict mode */
"use strict";
// define redipsInit variable
var redipsInit;
// redips initialization
redipsInit = function () {
// reference to the REDIPS.drag library and message line
var rd = REDIPS.drag,
msg;
// initialization
rd.init();
// set hover color for TD and TR
rd.hover.colorTd = '#FFCFAE';
rd.hover.colorTr = '#9BB3DA';
// set hover border for current TD and TR
rd.hover.borderTd = '2px solid #32568E';
rd.hover.borderTr = '2px solid #32568E';
// drop row after highlighted row (if row is dropped to other tables)
rd.rowDropMode = 'after';
// row was clicked - event handler
rd.event.rowClicked = function () {
// set current element (this is clicked TR)
var el = rd.obj;
// find parent table
el = rd.findParent('TABLE', el);
// every table has only one SPAN element to display messages
msg = el.getElementsByTagName('span')[0];
// display message
msg.innerHTML = 'Clicked';
};
// row was moved - event handler
rd.event.rowMoved = function () {
// set opacity for moved row
// rd.obj is reference of cloned row (mini table)
rd.rowOpacity(rd.obj, 85);
// set opacity for source row and change source row background color
// rd.objOld is reference of source row
rd.rowOpacity(rd.objOld, 20, 'White');
// display message
msg.innerHTML = 'Moved';
};
// row was not moved - event handler
rd.event.rowNotMoved = function () {
msg.innerHTML = 'Not moved';
};
// row was dropped - event handler
rd.event.rowDropped = function () {
// display message
msg.innerHTML = 'Dropped';
};
// row was dropped to the source - event handler
// mini table (cloned row) will be removed and source row should return to original state
rd.event.rowDroppedSource = function () {
// make source row completely visible (no opacity)
rd.rowOpacity(rd.objOld, 100);
// display message
msg.innerHTML = 'Dropped to the source';
};
/*
// how to cancel row drop to the table
rd.event.rowDroppedBefore = function () {
//
// JS logic
//
// return source row to its original state
rd.rowOpacity(rd.objOld, 100);
// cancel row drop
return false;
}
*/
// row position was changed - event handler
rd.event.rowChanged = function () {
// get target and source position (method returns positions as array)
var pos = rd.getPosition();
// display current table and current row
msg.innerHTML = 'Changed: ' + pos[0] + ' ' + pos[1];
};
};
// add onload event listener
if (window.addEventListener) {
window.addEventListener('load', redipsInit, false);
}
else if (window.attachEvent) {
window.attachEvent('onload', redipsInit);
}
คำถาม
1. อยากทราบว่าเมื่อเราจัดย้ายกลุ่มเสร็จแล้ว เมื่อกดบันทึก จะให้ update ข้อมูลเป็นของแต่ละกลุ่ม ครับ
เช่น
ข้อมูลที่อยู่ กลุ่มA ให้ update unit เป็น 1
ข้อมูลที่อยู่ กลุ่มB ให้ update unit เป็น 2
ข้อมูลที่อยู่ กลุ่มC ให้ update unit เป็น 3
ข้อมูลที่อยู่ กลุ่มD ให้ update unit เป็น 4
ประมาณนี้ครับ