21

easyUI 教程 » 创建课程表

释放课程名称到课程表单元格:本教程将向您展示如何通过jQuery EasyUI创建一个课程表。我们将创建两个表格:左侧为课程名称,右侧为课程表。你可以拖拽课程名称并释放到课程表单元格。

课程名称对象是一个<div>元素,课程表单元格时一个<td>元素。

创建课程表 Creating a School Timetable

创建课程表 Creating a School Timetable

显示课程名称:

<div class="left">
    <table>
        <tr>
            <td><div class="item">English</div></td>
        </tr>
        <tr>
            <td><div class="item">Science</div></td>
        </tr>
        <!-- other subjects -->
    </table>
</div>

显示课程表:

<div class="right">
    <table>
        <tr>
            <td class="blank"></td>
            <td class="title">Monday</td>
            <td class="title">Tuesday</td>
            <td class="title">Wednesday</td>
            <td class="title">Thursday</td>
            <td class="title">Friday</td>
        </tr>
        <tr>
            <td class="time">08:00</td>
            <td class="drop"></td>
            <td class="drop"></td>
            <td class="drop"></td>
            <td class="drop"></td>
            <td class="drop"></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回调函数。我们将克隆拖拽的左侧元素并将其添加到课程表单元格中。当从课程表中一个单元格拖拽到另一个单元格时,仅移动课程名称对象。

下载课程表实例代码: easyui-timetable-demo.zip

您可能会喜欢这些文章

One Response to “easyUI 创建课程表 Creating a School Timetable”

  1. 厅苦DSAFDSADAFDSAF Says:

    DSAFDSAF

Leave a Reply