jQWidgets jqxScheduler destroy()方法

jQWidgets jqxScheduler destroy()方法详解

destroy()jQWidgets jqxScheduler插件的一个方法,用于销毁日程表控件及其相关的所有元素,并将所有绑定的事件和数据清除。

方法语法

destroy(): void

方法参数

此方法不接受任何参数。

方法返回值

此方法不返回任何值。

方法示例

示例一

在这个示例中,我们创建一个简单的日程表,然后在页面上添加一个“销毁”按钮,通过按钮单击事件调用destroy()方法来销毁日程表。

<head>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/styles/jqx.base.css">
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxcore.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxbuttons.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxdata.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxdatetimeinput.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxmenu.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxcalendar.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxscheduler.js"></script>
</head>
<body>
    <div id="schedulerContainer" style="width: 100%; height: 400px"></div>
    <div id="buttonContainer"></div>

    <script>
        $(document).ready(function () {
            var appointments = new Array();
            var appointment1 = {
                id: "id1",
                description: "Meeting",
                location: "",
                subject: "Plan Meeting",
                calendar: "Room 1",
                start: new Date(2021, 6, 1, 9, 0, 0, 0),
                end: new Date(2021, 6, 1, 11, 0, 0, 0)
            }
            appointments.push(appointment1);

            var appointment2 = {
                id: "id2",
                description: "",
                location: "",
                subject: "Product Launch",
                calendar: "Room 2",
                start: new Date(2021, 6, 3, 10, 0, 0, 0),
                end: new Date(2021, 6, 3, 12, 0, 0, 0)
            }
            appointments.push(appointment2);

            var source = {
                dataType: "array",
                dataFields: [
                    { name: "id", type: "string" },
                    { name: "description", type: "string" },
                    { name: "location", type: "string" },
                    { name: "subject", type: "string" },
                    { name: "calendar", type: "string" },
                    { name: "start", type: "date" },
                    { name: "end", type: "date" }
                ],
                id: "id",
                localData: appointments
            };

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

            $("#schedulerContainer").jqxScheduler({
                date: new $.jqx.date(2021, 6, 1),
                width: "100%",
                height: 400,
                source: adapter,
                view: "weekView",
                showLegend: true,
                ready: function () {
                    $("#schedulerContainer").jqxScheduler("ensureAppointmentVisible", "id1");
                }
            });

            var buttonOptions = {
                width: "80px",
                height: "25px",
                value: "销毁"
            };

            $("#buttonContainer").jqxButton(buttonOptions);

            $("#buttonContainer").on("click", function () {
                $("#schedulerContainer").jqxScheduler("destroy");
            });
        });
    </script>
</body>

示例二

在这个示例中,我们创建一个日程表,然后在页面上添加一个文本框和一个按钮,通过按钮单击事件添加新的预约。在添加新预约之前,我们会检查当前预约是否已经存在,如果已经存在,则使用destroy()方法将其清除并添加新预约。

<head>
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/styles/jqx.base.css">
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxcore.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxbuttons.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxdata.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxdatetimeinput.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxmenu.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxcalendar.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/jqwidgets-framework/jqwidgets/jqxscheduler.js"></script>
</head>
<body>
    <div id="schedulerContainer" style="width: 100%; height: 400px"></div>
    <div style="margin-top: 10px">
        <input id="appointmentId" type="text" placeholder="输入预约ID"/>
        <button id="addAppointmentButton">添加预约</button>
    </div>

    <script>
        $(document).ready(function () {
            var appointments = new Array();
            var appointment1 = {
                id: "id1",
                title: "Meeting",
                location: "",
                subject: "Plan Meeting",
                calendar: "Room 1",
                start: new Date(2021, 6, 1, 9, 0, 0, 0),
                end: new Date(2021, 6, 1, 11, 0, 0, 0)
            }
            appointments.push(appointment1);

            var source = {
                dataType: "array",
                dataFields: [
                    { name: "id", type: "string" },
                    { name: "title", type: "string" },
                    { name: "location", type: "string" },
                    { name: "subject", type: "string" },
                    { name: "calendar", type: "string" },
                    { name: "start", type: "date" },
                    { name: "end", type: "date" }
                ],
                id: "id",
                localData: appointments
            };

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

            $("#schedulerContainer").jqxScheduler({
                date: new $.jqx.date(2021, 6, 1),
                width: "100%",
                height: 400,
                source: adapter,
                view: "weekView",
                showLegend: true,
                resources:
                    {
                        colorScheme: "scheme05",
                        dataField: "calendar",
                        source: new $.jqx.dataAdapter({
                            dataType: "array",
                            dataFields: [
                                { name: "calendar", type: "string" },
                                { name: "calendarDesc", type: "string" },
                                { name: "calendarColor", type: "string" }
                            ],
                            localData: [
                                { calendar: "Room 1", calendarDesc: "Room 1", calendarColor: "#6aa84f" },
                                { calendar: "Room 2", calendarDesc: "Room 2", calendarColor: "#fcb322" },
                                { calendar: "Room 3", calendarDesc: "Room 3", calendarColor: "#007bb6" }
                            ]
                        })
                    }
            });

            $("#addAppointmentButton").on("click", function () {
                var id = $("#appointmentId").val();
                var existingAppointment = $("#schedulerContainer").jqxScheduler("getAppointmentByUniqueId", id);
                if (existingAppointment) {
                    $("#schedulerContainer").jqxScheduler("destroyAppointment", existingAppointment);
                }

                var appointment = {
                    id: id,
                    title: "测试预约",
                    location: "",
                    subject: "测试主题",
                    calendar: "Room 1",
                    start: new Date(2021, 6, 1, 12, 0, 0, 0),
                    end: new Date(2021, 6, 1, 14, 0, 0, 0)
                };

                $("#schedulerContainer").jqxScheduler("addAppointment", appointment);
            });
        });
    </script>
</body>

在这个示例中,我们通过调用destroyAppointment()方法删除现有预约,并在日程表中添加新的测试预约。

通过上述两个示例,我们可以看出,destroy()方法并不仅适用于销毁整个日程表,而且可以用于删除日程表中特定的预约。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jQWidgets jqxScheduler destroy()方法 - Python技术站

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

相关文章

  • jQuery层次选择器用法示例

    下面我会详细讲解“jQuery层次选择器用法示例”的完整攻略,并提供两个示例说明。 什么是jQuery层次选择器 在jQuery中,层次选择器用于根据元素之间的层次关系选择元素。jQuery支持大量的层次选择器,包括子元素选择器、后代元素选择器、相邻兄弟选择器和通用兄弟选择器。 示例说明: HTML代码如下: <div> <ul> &…

    jquery 2023年5月28日
    00
  • jQWidgets jqxGrid enablebrowserselection属性

    jQWidgets 是一个流行的 JavaScript UI 库,提供了许多可定制的 UI 组件。其中一个组件是 jqxGrid,它是一个用于显示表格数据控件。jqxGrid提供多个属性其中之一是 enablebrowserselection。下面是关于 jqxGrid 的 enablebrowserselection 属性的详攻: enablebrowse…

    jquery 2023年5月11日
    00
  • 利用jQuery及AJAX技术定时更新GridView的某一列数据

    首先,我们需要在页面中引入最新版本的jQuery库: <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script> 然后,我们需要准备好一个带有某个列的GridView控件,并设定这个列的ID值,用来在后续的JS代码中定位该列: <as…

    jquery 2023年5月27日
    00
  • jQWidgets jqxGrid removegroupat()方法

    以下是关于“jQWidgets jqxGrid removegroupat()方法”的完整攻略,包含两个示例说明: 方法简介 removeat() 方法是 jQWidgets jqxGrid 控件的一个方法,用于移除指定位置的分组。该方法的语法如下: $("#jqxGrid").jqxGrid(‘removegroupat’, index…

    jquery 2023年5月10日
    00
  • jQWidgets jqxDropDownList filterPlaceHolder 属性

    jQWidgets jqxDropDownList filterPlaceHolder 属性详解 jQWidgets是一个基于jQuery的UI组件库,提供了丰富UI组件和工具包。jqxDropDownList是组件的组件之一。本文将详细介绍jqxDropDownList的filterPlaceHolder属性,包括用法、语法和示例。 filterPlace…

    jquery 2023年5月10日
    00
  • asp.net中js和jquery调用ashx的不同方法分享

    在ASP.NET中,可以使用JavaScript和jQuery调用ASHX(ASP.NET处理程序)来完成许多逻辑任务。但是,使用JavaScript和jQuery调用ASHX的方式有所不同。本文将详细讲解这两种方法的使用,提供完整示例并指导读者如何选择适合自己的方法。 使用JavaScript调用ASHX 使用JavaScript调用ASHX,需要通过创建…

    jquery 2023年5月27日
    00
  • jQWidgets jqxExpander showArrow属性

    jQWidgets jqxExpander showArrow属性 jQWidgets是一个基于jQuery的UI组件库,提供了丰富UI组件和工具包表格等。jqExpander是jQ的一个组件,创建可折叠面板。jqxExpander提供了多个属性其中包括showArrow属性。本文将详细介绍showArrow`属性,并提供两个示例。 showArrow属性的…

    jquery 2023年5月9日
    00
  • jQuery 图片查看器插件 Viewer.js用法简单示例

    jQuery 图片查看器插件 Viewer.js用法简单示例 简介 Viewer.js 是一款基于 jQuery 的简单易用图片查看器插件,可以快速实现图片预览和查看,支持常见的文件格式,并且使用方便。 安装 可以直接在官方网站下载 Viewer.js 的压缩包,或者通过其他方式获取插件的源代码。 下载 可以访问 官方网站 下载完整版或者压缩版的 Viewe…

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