Django Admin内置日历的事件

时间:2019-02-28 14:34:47

标签: jquery django

在Django Admin中,具有内置的Today和Calendar锚点(AdminDateWidget)的DateField ..如何从日历中选择日期后如何捕获事件?

我尝试了所有不同的事件而不是单击,但仍然无法正常工作。

$("div.form-row.field-construction_end_date a[id^=calendarlink1]").on("click",
    function () {
    alert("works");

1 个答案:

答案 0 :(得分:0)

我必须进入Django库,并逐步浏览calendar.js和datetimeshortcuts.js的代码,以了解发生了什么。在datetimeshortcuts.js的第410行中,我插入了此代码以手动触发事件。现在可以使用了:

if ("createEvent" in document) {
    var evt = document.createEvent("HTMLEvents");
    evt.initEvent("change", true, true);
    DateTimeShortcuts.calendarInputs[num].dispatchEvent(evt);
}
else
    DateTimeShortcuts.calendarInputs[num].fireEvent("onchange");

那是我从这里得到的代码:

How can I trigger an onchange event manually?