fullcalendar 通过不是其 id 的元素名称获取事件

fullcalendar get event by element name that isn't its id

我正在使用 fullcalendar.io。 如果我想获取一个事件,我可以通过它的 ID 获取它:

var arry=$("#calendar").fullCalendar('clientEvents', eventID);

我正在使用 JSON 填充日历,可能如下所示:

{
"events": [
    {
        "title": "tkt[24595]",
        "start": "2019-04-02T08:00:00.196-0500",
        "end": "2019-04-02T09:00:00.196-0500",
        "id": "107788",
        "userID": "1",
        "color": "#2d9798",
        "className": "ticketSrc",
        "custom": "<div class='einfo'><b>problem&..",
        "unique": "1_107788"
    },
    {
        "title": "tkt[24598]",
        "start": "2019-04-03T08:00:00.196-0500",
        "end": "2019-04-03T09:00:00.196-0500",
        "id": "108167",
        "userID": "1",
        "color": "#2d9798",
        "className": "ticketSrc",
        "custom": "<div class='einfo'><b>problem&..",
        "unique": "1_108167"
    }]}

如何使用传递给它的其他字段之一获取日历事件,例如 "userID"?

正如在 documentation 中提到的 clientEvents 方法,您可以传递一个自定义回调函数,而不是将 ID 作为参数传递,您可以使用它来过滤任何事件列表你希望的方式。回调为日历中的每个事件运行一次,如果回调 returns 为真,则该事件将包含在结果中。

例如(使用硬编码的用户 ID,但您明白了):

var arry = $("#calendar").fullCalendar('clientEvents', function(event) {
  if (event.userID == "1") return true;
  return false;
});