2024-09-27 09:27:37 发布
网友
在Django中,我有下面的代码,在HTML页面上创建用户名和密码表单:
<div class="control-group"> {{ form.username }} </div> <div class="control-group"> {{ form.password }} </div>
我想在字段中添加“Username”和“Password”占位符文本,然后当用户单击字段时,单词dissapes就会消失。实现这一目标的最佳方法是什么?
如果它可能对某人有帮助,我想使用模型的help_text属性作为占位符。根据阿齐米尼亚的回答,这是最简单的方法:
help_text
class MyForm(forms.ModelForm): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) for _, value in self.fields.items(): value.widget.attrs['placeholder'] = value.help_text class Meta: model = models.MyModel fields = (...)
我希望你的项目中有一个forms.py文件。创建表单时,可以使用以下选项设置字段的占位符:
username = forms.CharField(label='username', widget=forms.TextInput(attrs={'placeholder': 'username'}))
如果项目中有ModelForm,则可以实现为:
class MyForm(forms.ModelForm): class Meta: model = User widgets = { 'username': forms.TextInput(attrs={'placeholder': 'username'}), .......... }
必须使用placeholder属性
class LoginForm(forms.Form): username = forms.CharField(label='username') password = forms.CharField(label='password') def __init__(self, *args, **kwargs): super(LoginForm, self).__init__(*args, **kwargs) self.fields['username'].widget.attrs['placeholder'] = 'username' self.fields['password '].widget.attrs['placeholder'] = 'password'
或者
class LoginForm(forms.Form): username = forms.CharField(label='username',widget=forms.TextInput(attrs={'placeholder':'username'})) password = forms.CharField(label='password',widget=forms.PasswordInput(attrs={'placeholder':'password'}))
如果它可能对某人有帮助,我想使用模型的
help_text
属性作为占位符。根据阿齐米尼亚的回答,这是最简单的方法:我希望你的项目中有一个forms.py文件。创建表单时,可以使用以下选项设置字段的占位符:
如果项目中有ModelForm,则可以实现为:
必须使用placeholder属性
或者
相关问题 更多 >
编程相关推荐