jQWidgets jqxScheduler资源属性

jQWidgets jqxScheduler是一款用于创建可视化调度表格的JavaScript插件,其中提供了多种可配置的资源属性用于在调度表格上创建自定义任务和事件。在本篇攻略中,我们将详细讲解jQWidgets jqxScheduler资源属性的使用方法和示例说明。

什么是资源属性

在jQWidgets jqxScheduler插件中,资源属性是指为调度表格中的任务和事件提供自定义属性的设置方式。调度表格中的任务和事件可以被分配给一个或多个资源,并且通过资源属性可以对任务和事件进行进一步的细分和定制。

资源属性包括但不限于以下几种:

  • resourceDataField:任务和事件所属资源的数据源字段名。
  • resourceColumnWidth:每个资源列的宽度。
  • resources:调度表格中所有资源的集合。

如何使用资源属性

使用jQWidgets jqxScheduler插件的资源属性非常简单,只需要在配置项中添加对应的属性即可。例如,我们通过以下配置生成一个调度表格:

var source =
{
    dataType: "json",
    dataFields: [
        { name: 'id', type: 'string' },
        { name: 'status', type: 'string' },
        { name: 'text', type: 'string' },
        { name: 'start', type: 'date' },
        { name: 'end', type: 'date' },
        { name: 'resourceId', type: 'string' }
    ],
    id: 'id',
    url: 'data.php'
};

var adapter = new jqx.dataAdapter(source);

$('#scheduler').jqxScheduler({
    date: new Date(2022, 9, 23),
    width: '100%',
    height: 600,
    source: adapter,
    view: 'weekView',
    showToolbar: true,
    resources: [
        {
            dataField: 'resourceId',
            title: 'Room 101',
            width: '100%',
            source: new jqx.dataAdapter({
                dataType: 'json',
                dataFields: [
                    { name: 'id', type: 'string' },
                    { name: 'name', type: 'string' }
                ],
                id: 'id',
                url: 'rooms.php'
            })
        }
    ]
});

我们在资源属性中添加了resources,并通过dataField指定了任务和事件所属的资源ID字段名。同时我们也指定了资源的title和source属性,用于指定资源名称和资源数据源。

使用资源属性可以更加灵活的对任务和事件的资源属性进行设置,使得调度表格更加符合实际需要。

示例说明

以下是两个示例说明,向您展示了如何在jQWidgets jqxScheduler插件中使用资源属性来创建自定义的调度表格。

示例一:使用多个资源列

我们假设现在需要创建一个调度表格,要求每个任务和事件可以被分配到多个资源中。为了实现这一需求,我们可以使用resources的数组来实现。在以下示例中,我们创建一个调度表格,并指定两个资源列,每行任务可以被分配到多个资源中。

var source =
{
     dataType: "json",
     dataFields: [
         { name: 'id', type: 'string' },
         { name: 'subject', type: 'string' },
         { name: 'from', type: 'date' },
         { name: 'to', type: 'date' },
         { name: 'resource1', type: 'string' },
         { name: 'resource2', type: 'string' }
     ],
     id: 'id',
     url: 'appointments.php'
};

var appointmentData = new $.jqx.dataAdapter(source);

$('#scheduler').jqxScheduler({
     width: '100%',
     height: 700,
     showToolbar: true,
     resources:
     [
         {
             dataField: 'resource1',
             title: 'Employee',
             source: new $.jqx.dataAdapter(source)
         },
         {
             dataField: 'resource2',
             title: 'Room',
             source: new $.jqx.dataAdapter(source)
         }
     ],
     appointmentDataFields:
     {
         from: 'from',
         to: 'to',
         id: 'id',
         subject: 'subject',
         resourceId1: 'resource1',
         resourceId2: 'resource2'
     },
     views:
     [
         'dayView',
         'weekView',
         'monthView'
     ]
 });

在以上示例中,我们定义了两个资源列,并通过dataField指定了我们任务和事件中所属的资源字段名。资源列的title用于定义资源列的标题,source为我们资源列中资源数据源。

在appointmentDataFields中我们指定了各个属性所对应的数据源字段名。其中resourceId1和resourceId2分别对应任务和事件中所属的资源ID字段名,这两个属性为jqxScheduler插件所内置。

示例二:使用资源组

在jQWidgets jqxScheduler插件中,我们可以把资源列组合成资源组,用于更加灵活的对任务和事件进行分配。以下是一个使用资源组的示例,这个调度表格用来管理各个员工的日程安排。

var source =
{
     dataType: "json",
     dataFields: [
         { name: 'id', type: 'string' },
         { name: 'subject', type: 'string' },
         { name: 'from', type: 'date' },
         { name: 'to', type: 'date' },
         { name: 'group', type: 'string' }
     ],
     id: 'id',
     url: 'appointments.php'
};

var appointmentData = new $.jqx.dataAdapter(source);

$('#scheduler').jqxScheduler({
     width: '100%',
     height: 700,
     showToolbar: true,
     resources:
     [
         {
             dataField: 'group',
             title: 'Employee Group',
             allowMultiple: false,
             source: new $.jqx.dataAdapter(source)
         },
         {
             dataField: 'id',
             title: 'Employee',
             allowMultiple: true,
             source: new $.jqx.dataAdapter(source)
         }
     ],
     appointmentDataFields:
     {
         from: 'from',
         to: 'to',
         id: 'id',
         subject: 'subject',
         resourceId: 'id'
     },
     views:
     [
         'dayView',
         'weekView',
         'monthView'
     ]
 });

在以上示例中,我们通过dataField将任务和事件分配到对应的资源中。同时我们也针对每个资源特别设置了allowMultiple属性,指定是否允许一个任务或事件分配到多个资源中。

最后,这个调度表格展示了员工的日程安排,并且可以以资源组的形式进行管理和分配。

总结

在本篇攻略中,我们详细讲解了jQWidgets jqxScheduler插件的资源属性,在这些属性中,我们可以灵活的对任务和事件进行分配和定制,使得调度表格更加符合实际需求。无论是多个资源列还是资源组,这些属性都能够为我们的调度表格的创建提供更加完善和灵活的方式。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jQWidgets jqxScheduler资源属性 - Python技术站

(0)
上一篇 2023年5月11日
下一篇 2023年5月11日

相关文章

  • jQuery on()方法示例及jquery on()方法的优点

    下面我来详细讲解“jQuery on()方法示例及jquery on()方法的优点”的攻略。 1. 什么是jQuery on()方法? jQuery on() 方法用于为一个或多个事件元素附加一个或多个事件处理程序。支持动态添加和移除事件。 在jquery 1.7之前,我们使用的bind()、live()、delegate()方法也可以为元素绑定事件或者动态…

    jquery 2023年5月28日
    00
  • 如何在jQuery中找到已知类的父类名称

    在jQuery中,可以使用parent()方法获取指定元素的父元素,如果父元素中还包含其它元素或节点,可以利用.parent()方法不断向上查询父元素,直至找到满足条件的父元素。 如果我们想要找到已知类的父类名称,可以通过.parent()方法的结合上一级选择器来实现。 具体步骤如下: 选中指定元素:先选中具有目标类的元素,例如: <div class…

    jquery 2023年5月12日
    00
  • jQuery 使用手册(一)

    以下是详细讲解“jQuery 使用手册(一)”的完整攻略: jQuery 使用手册(一) 什么是 jQuery? jQuery 是一种流行的 JavaScript 库,用于简化 HTML 文档的遍历、事件处理、动画和 Ajax 操作。它被设计为易于使用的操作 DOM 元素的工具。 如何使用 jQuery? 在使用 jQuery 之前,我们需要先引入 jQue…

    jquery 2023年5月27日
    00
  • jQuery callbacks.fire()方法

    在jQuery中,可以使用callbacks.fire()方法来触发回调函数列表中的所有回调函数。以下是详细攻略,含两个示例,演示如何使用callbacks.fire()方法: 语法 callbacks.fire()方法的语法如下: callbacks.fire([参数]); ` 参数说明: – `参数`:可选参数传递给回调函数的参数。 返回值: – 无返回…

    jquery 2023年5月9日
    00
  • jQWidgets jqxTree hitTest()方法

    以下是关于 jQWidgets jqxTree 的 hitTest() 方法的完整攻略: jQWidgets jqxTree hitTest() 方法 hitTest() 方法用于获取鼠标指针当前所在位置的节点信息。该方法返回一个对象,包含以下属性: item:当前所在节点的数据对象。 element:当前所在节点的 DOM 元素。 bounds:当前所在节…

    jquery 2023年5月11日
    00
  • jquery-mobile基础属性与用法详解

    jQuery Mobile基础属性与用法详解 什么是jQuery Mobile? jQuery Mobile 是一个用于创建移动 web 应用的用户界面框架,它基于 jQuery 核心库构建,它是轻便灵活的。它不仅可以帮助开发人员创建用户界面,还可以创建标准化的用户界面,而这些界面可以在不同的移动设备和窗口大小上运行。 jQuery Mobile基础结构 在…

    jquery 2023年5月27日
    00
  • jQWidgets jqxDataTable selectRow()方法

    jQWidgets 是一个流行的 JavaScript UI 库,提供了许多可定制的 UI 组件。其中一个组件是 jqxDataTable,它是用于显示和编辑表格数据的件。jqxDataTable 提供多个方法和属性,其中之一是 selectRow()。下面是关于 jqxDataTable 的 selectRow() 方法的详攻略: selectRow() …

    jquery 2023年5月11日
    00
  • Ajax全局加载框(Loading效果)的配置

    针对Ajax全局加载框(Loading效果)的配置,我们可以使用第三方库或者自己编写代码实现。下面我将分别提供两种方法。 方法一:使用第三方库 我们可以使用国内外常用的一些JS加载库,例如NProgress、Pace等,这些库都是比较轻量的,而且集成简单,使用方便,下面以NProgress为例: 下载库文件在 NProgress官网 上下载最新版本的 npr…

    jquery 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部