【问题标题】:Full Calendar v5 Add Attribute to Event完整日历 v5 向事件添加属性
【发布时间】:2020-10-28 10:51:37
【问题描述】:

在以前的完整日历版本中,我会使用 eventRender 来操作事件元素并添加数据属性。

现在我们的任务是升级到 v5,看来 eventRender 已被弃用,我找不到做同样事情的方法。

在此处的文档中...https://fullcalendar.io/docs/event-render-hooks 我可以使用 eventDidMount 访问元素 (el) - 但是对 attr 或数据的任何调用都会导致“未定义 attr”错误。

 eventDidMount: function(data) {
        data.el.data('res', 123);
    },

data.el.data 不是函数

所以知道数据是 jQuery,我试试这个...

eventDidMount: function(data) {
        $(data.el).data('res', 123);
    },

没有错误了,也没有添加数据属性。

所以我也尝试使用“追加”来插入一个带有属性的元素,但是将其添加为纯文本。

eventDidMount: function(data) {
    data.el.append('<span data-id="123"></span>');
},

在这里让自己发疯,试图做一些相对简单的事情,还有其他人遇到过这种情况吗?

【问题讨论】:

  • “所以知道数据是 jQuery,我尝试 [...] 不再有错误,但也没有添加数据属性。” - 这不是 .data() 所做的,请参阅 @ 987654322@: “使用 data() 方法更新数据不会影响 DOM 中的属性。要设置 data-* 属性值,请使用 attr。”
  • 谢谢你,我认为你是正确的 - 所以它有效,我只是没有看到它!

标签: javascript fullcalendar


【解决方案1】:

总是这样。我扯头发 30 分钟,发布问题,然后找到答案。

eventDidMount: function(data) {
        data.el.setAttribute("data-id", 123);
    },

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多