为Crispy-forms输入分配ID或类
我在这方面遇到了一些困难。我有一个模板,它可以渲染一个使用 crispy-forms 的表单,像这样:
<div class="box"> {% crispy form%} </div>
在同一个模板中,我还有这段 JavaScript 代码:
<script>
$(function() {
$( ".datepicker" ).datepicker({
changeMonth: true,
changeYear: true,
});
});
</script>
这个函数使用了一个类名:".datepicker"。这是我在 forms.py 中写的代码:
class FacturaForm(ModelForm):
class Meta:
model = Factura
exclude = ("importe_Total", "iva")
widgets = {
'descripcion' : forms.Textarea(attrs={'rows':3}),
'fecha_factura': forms.DateInput(attrs={'class':'datepicker'}),
}
通过这种方式,我想在这个字段 "fecha_factura" 上使用日期选择器。但显然它没有正常工作。这是我在 forms.py 中的另一段代码:
helper = FormHelper()
helper.form_method = 'POST'
helper.layout = Layout(
'tipo_Factura',
'nombre_cliente',
'fecha_factura',
'numero_De_Factura',
'descripcion',
PrependedText('importe_sin_iva', '$'),
FormActions(Submit('Agregar', 'Agregar', css_class= 'btn-primary'))
)
所以,有没有什么办法让这段代码使用 JavaScript 并显示出漂亮的日期选择器呢?
任何建议都非常感谢。谢谢。
1 个回答
2
我也遇到过同样的情况,我没有在meta中使用日期选择器,而是把它放在布局中,这样就可以正常工作了,代码如下:
self.helper.layout = layout.Layout(
AppendedText('start', '<span class="glyphicon glyphicon-calendar"></span>', css_class="datepicker ", placeholder=_("Start")),
)