Django表单-包含“重置”按钮

时间:2019-03-03 06:39:05

标签: django forms filter

我已经设法使用FilterSet在django项目中包含一个表单。它运作良好-没问题。 当我在表单中键入内容进行搜索(例如“ BMW”)时,模板中的表格将被过滤(“ BMW”),尽管我的搜索“ BMW”仍停留在该字段中。因此,我想添加一个“清除”按钮,用户可以单击该按钮,并且“ BMW”从字段中消失,搜索结果返回到初始表。我怎么能意识到这一点?

当前,我已在模板中添加了一个按钮(但是当我单击它时什么也没有发生)

<button type="reset" class="btn btn-primary" onclick="resetEffort()"">
  <span class="glyphicon glyphicon-search"></span> Clear
</button>

这是我的view.py:

def cars_overview(request):
 car = CarFilter(request.GET, queryset=Car.objects.all())
 return render(request, 'cars/cars.html', {'filter': car})

非常感谢!

1 个答案:

答案 0 :(得分:0)

您可以拦截事件,暂停事件,清除值,然后使用js提交表单。

document.querySelector('button[type="reset"]').addEventListener('click', function (e) {
  e.preventDefault();

  this.parentElement.reset();
  this.parentElement.submit();
})