Django 表单的表单重置和数据重置

2023-04-11 00:00:00 数据 表单 重置

Django表单的表单重置指的是重置表单中所有的输入元素,包括文本框、复选框、单选框等,将它们的值都设置为初始值或空。表单重置可以通过使用HTML中的reset按钮来实现。在Django中,可以使用以下方式来实现表单重置:

  1. 在表单的HTML模板中添加reset按钮:
<form>
  <!-- 表单元素 -->
  <input type="reset" value="重置">
</form>
  1. 使用JavaScript来重置表单:
<form id="myForm">
  <!-- 表单元素 -->
  <button type="button" onclick="document.getElementById('myForm').reset()">重置</button>
</form>

数据重置指的是将表单中输入元素的值重置为初始值或空,并清除已经提交的表单数据。在Django中,可以使用以下方式来实现数据重置:

  1. 在表单类中添加clean方法:
from django import forms

class MyForm(forms.Form):
    name = forms.CharField(max_length=100, initial="pidancode.com")
    message = forms.CharField(widget=forms.Textarea)

    def clean(self):
        cleaned_data = super().clean()
        if "message" in cleaned_data and cleaned_data["message"] == "皮蛋编程":
            # 数据重置
            self.data = {}
            raise forms.ValidationError("消息不能包含 '皮蛋编程'!")
  1. 使用JavaScript来重置表单数据:
<form id="myForm" method="post">
  <!-- 表单元素 -->
  <button type="button" onclick="document.getElementById('myForm').reset(); document.getElementById('myForm').submit()">提交</button>
</form>

相关文章