django的jsCalendar的widget

本文介绍了一种在网页表单中使用自定义组件JsCalendarWidget实现日期时间选择的方法。通过覆盖默认的输入框,该组件引入了日历插件来方便用户选择日期时间,并提供了相应的JavaScript初始化代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

要在form中输入时间

class JsCalendarWidget(forms.TextInput):
class Media:
js = (
settings.MEDIA_URL+"js/jscalendar/calendar_stripped.js",
settings.MEDIA_URL+"js/jscalendar.setup.js",
settings.MEDIA_URL+"js/jscalendar/calendar-setup_stripped.js",
settings.MEDIA_URL+"js/jscalendar/lang/calendar-en.js",
)
css = {
'all': (settings.MEDIA_URL+'/js/jscalendar/skins/aqua/theme.css',)
}

def __init__(self, attrs={}):
super(JsCalendarWidget, self).__init__(attrs)

class IssueForm(ModelForm):
issue_occur_date = forms.DateTimeField(widget=JsCalendarWidget(attrs={'class':'vDateField','size':'50'}))


对应的js设置代码是:

function initCalendar() {
Calendar.setup(
{
inputField : "id_issue_occur_date", //我的设置字段
ifFormat : "%Y-%m-%d %H:%M:%S",
button : "trigger"
}
);
}

if(document.all) {
window.attacheEvent('onload',initCalendar);
} else {
window.addEventListener('load',initCalendar,false);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值