admin管理员组文章数量:1279188
I am using Django form for inputs. However, I would like to custom it a little bit. For example the following Django code will be translated into:
#Django code
aerial_size_dist = forms.ChoiceField(initial='Very Fine to Fine')
#Translated HTML
<tr><th><label for="id_aerial_size_dist">Aerial size dist:</label></th><td><select name="aerial_size_dist" id="id_aerial_size_dist"></select></td></tr>
My question is that how to add a label property such as "style" from working from the Django side? Can widget change Django form label property?
Target HTML
<tr><th><label for="id_aerial_size_dist" style="display:none;">Aerial size dist:</label></th><td><select name="aerial_size_dist" id="id_aerial_size_dist"></select></td></tr>
I am using Django form for inputs. However, I would like to custom it a little bit. For example the following Django code will be translated into:
#Django code
aerial_size_dist = forms.ChoiceField(initial='Very Fine to Fine')
#Translated HTML
<tr><th><label for="id_aerial_size_dist">Aerial size dist:</label></th><td><select name="aerial_size_dist" id="id_aerial_size_dist"></select></td></tr>
My question is that how to add a label property such as "style" from working from the Django side? Can widget change Django form label property?
Target HTML
<tr><th><label for="id_aerial_size_dist" style="display:none;">Aerial size dist:</label></th><td><select name="aerial_size_dist" id="id_aerial_size_dist"></select></td></tr>
Share
Improve this question
edited Jun 20, 2020 at 9:12
CommunityBot
11 silver badge
asked Apr 16, 2012 at 17:03
TTTTTT
4,43413 gold badges77 silver badges129 bronze badges
1
- docs.djangoproject./en/dev/ref/forms/widgets yes you can – K Z Commented Apr 16, 2012 at 17:07
3 Answers
Reset to default 9Similar problem is answered here: Get the ID of a field widget in a formset . Although it doesn't allow you to customize the ID directly, it uses default (autogenerated) ID
(Short answer) use this in template:
EDIT:
<label for="{{ form.my_field.id_for_label }}">{{ form.my_field.label }}</label>
old one: (this was not working in some cases - see ments)
<label for="{{ form.my_field.auto_id }}">{{ form.my_field.label }}</label>
class FormName(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(FormName, self).__init__(*args, **kwargs)
self.fields['field_name'].widget.attrs['style'] = '...'
https://docs.djangoproject./en/dev/ref/forms/widgets/#django.forms.Widget.attrs
本文标签: javascriptHow to add label ID in Django form Stack Overflow
版权声明:本文标题:javascript - How to add label ID in Django form- Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1741223038a2361331.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论