Django 表单 EmailField 不接受 css 属性
Django form EmailField doesn't accept the css attribute
我有一个包含一些字段的 from,但是我的 css
class 适用于除 EmailField
之外的所有字段。我也试过 sender.widget.attrs.update({'class':"contatct-form"})
但它仍然不起作用(只需更改字段的大小)。有人知道问题出在哪里吗?因为我所有的搜索都不成功。
形式:
from django import forms
class NameForm(forms.Form):
your_name = forms.CharField(initial='Your name', max_length=100)
sender = forms.EmailField()
#sender.widget.attrs.update({'class':"contatct-form"})
message = forms.CharField(widget=forms.Textarea)
模板:
<div class="contatct-form">
<form action="" method="post">
{% csrf_token %}
{{ form }}
<input type="submit" value="send" />
</form>
</div>
您遇到的问题可能是因为您没有为您的 EmailField() 分配任何 小部件,更改为这个(如@ Todor 说)应该有效:
...
sender = forms.EmailField(
widget=forms.EmailInput(attrs={'class': 'contatct-form'})
)
如果由于某种原因这不起作用(可能是错误的 css 样式),您可以更改 css/[ 中的样式=18=]class 直接这样:
div.contatct-form form input[type=email] {
/* your changes here... */
}
希望对您有所帮助。
我们必须在 init 方法中用 for 循环对一个字段或所有字段执行此操作。
class NameForm(forms.Form):
def __init__(*args, **kwargs):
super(NameForm, self).__init__(*args, **kwargs)
self.fields['sender'].widget.attrs.update({'class':"contatct-form"})
我有一个包含一些字段的 from,但是我的 css
class 适用于除 EmailField
之外的所有字段。我也试过 sender.widget.attrs.update({'class':"contatct-form"})
但它仍然不起作用(只需更改字段的大小)。有人知道问题出在哪里吗?因为我所有的搜索都不成功。
形式:
from django import forms
class NameForm(forms.Form):
your_name = forms.CharField(initial='Your name', max_length=100)
sender = forms.EmailField()
#sender.widget.attrs.update({'class':"contatct-form"})
message = forms.CharField(widget=forms.Textarea)
模板:
<div class="contatct-form">
<form action="" method="post">
{% csrf_token %}
{{ form }}
<input type="submit" value="send" />
</form>
</div>
您遇到的问题可能是因为您没有为您的 EmailField() 分配任何 小部件,更改为这个(如@ Todor 说)应该有效:
...
sender = forms.EmailField(
widget=forms.EmailInput(attrs={'class': 'contatct-form'})
)
如果由于某种原因这不起作用(可能是错误的 css 样式),您可以更改 css/[ 中的样式=18=]class 直接这样:
div.contatct-form form input[type=email] {
/* your changes here... */
}
希望对您有所帮助。
我们必须在 init 方法中用 for 循环对一个字段或所有字段执行此操作。
class NameForm(forms.Form):
def __init__(*args, **kwargs):
super(NameForm, self).__init__(*args, **kwargs)
self.fields['sender'].widget.attrs.update({'class':"contatct-form"})