jQuery EasyUI 拖放 – 创建学校课程表
本教程将向您展示如何使用 jQuery EasyUI 创建一个学校课程表。
我们将创建两个表格:在左侧显示学校科目,在右侧显示时间表。
您可以拖动学校科目并放置到时间表单元格上。
学校科目是一个 <div> 元素,时间表单元格是一个 <td> 元素。
显示学校科目
<div> <table> <tr> <td><div>English</div></td> </tr> <tr> <td><div>Science</div></td> </tr> <!-- other subjects --> </table> </div>
显示时间表
<div> <table> <tr> <td></td> <td>Monday</td> <td>Tuesday</td> <td>Wednesday</td> <td>Thursday</td> <td>Friday</td> </tr> <tr> <td>08:00</td> <td></td> <td></td> <td></td> <td></td> <td></td> </tr> <!-- other cells --> </table> </div>
拖动在左侧的学校科目
$(\'.left .item\').draggable({ revert:true, proxy:\'clone\' });
放置学校科目在时间表单元格上
$(\'.right td.drop\').droppable({ onDragEnter:function(){ $(this).addClass(\'over\'); }, onDragLeave:function(){ $(this).removeClass(\'over\'); }, onDrop:function(e,source){ $(this).removeClass(\'over\'); if ($(source).hasClass(\'assigned\')){ $(this).append(source); } else { var c = $(source).clone().addClass(\'assigned\'); $(this).empty().append(c); c.draggable({ revert:true }); } } });
正如您所看到的上面的代码,当用户拖动在左侧的学校科目并放置到时间表单元格中时,onDrop 回调函数将被调用。我们克隆从左侧拖动的源元素并把它附加到时间表单元格上。
当把学校科目从时间表的某个单元格拖动到其他单元格,只需简单地移动它即可。
下载 jQuery EasyUI 实例
jeasyui-dd-timetable.zip
点我分享笔记