使用 JQuery 检测 django-bootstrap-datepicker-plus 中的更改

Nic*_*ick 6 javascript django jquery django-forms

我正在使用 django-bootstrap-datepicker-plus 包,并且我试图在日期更改时显示警报。但是,jquery 似乎没有检测到日期的任何更改。

遵循此问题Detect Change to selected date with bootstrap-datepicker仅当我将 JQuery UI CDN 添加到我的代码时才有效,这会导致出现两个日期选择器的问题。有没有办法让 JQuery 检测 django-bootstrap-datepicker 中的更改,而无需添加 JQuery UI 代码?

forms.py

from django import forms
from bootstrap_datepicker_plus.widgets import DatePickerInput

class ExampleForm(forms.Form):
    DOB = forms.DateField(required=False, label="Date of Birth",
                input_formats=['%d/%m/%Y'],
        widget=DatePickerInput(format='%d/%m/%Y')
    ) 
Run Code Online (Sandbox Code Playgroud)

网页

 <div class="col-12 col-md-6 mb-0 p-1">
      {{ form.DOB|as_crispy_field }}
    </div>
Run Code Online (Sandbox Code Playgroud)

渲染的 HTML 渲染的 HTML

STe*_*kov 2

有很多 JS 包具有类似的[日期,时间]选择器功能。根据文档django-bootstrap-datepicker-plus使用eonasdan picker。他们使用不同的事件名称。Eonasdan 实现为所有事件添加命名空间前缀,如此处所述,因此以下内容应该有效:dp.

$('#id_DOB').on('dp.change', ev => myHandler(ev));
Run Code Online (Sandbox Code Playgroud)