猿问

Django:没有提交按钮的表单导致404错误

我正在使用Django创建一个项目,该项目包含一个没有提交按钮的表单。我对js一点都不熟悉,所以我查找了如何做。一些答案说我应该这样做


<script>

  document.getElementById("search-form").submit();

</script>

但是以这种方式,在我进入此页面并导致404错误后,表单会自动提交。


我的html,


<form action="GET" action="{% url 'blog:search_entry' %}" id="search-form">

  <input type="text" name="q" placeholder="Search for posts...">

</form>

views.py 就是这样


def search_entry(request):

     query = request.GET.get('q')


    entries = Entry.objects.filter(

        Q(title__icontains=query) |

        Q(description__icontains=query)

    )


    return render(request, 'blog/search_entry.html', {'entries': entries})

urls.py


path('search_entry/', views.search_entry, name='search_entry'),

我究竟做错了什么?我成功使用了提交按钮顺便说一句。所以没有问题urls.py


错误说


要求的网址:... / entry_list / GET?q =


entry_list 是具有此表单的页面。


芜湖不芜
浏览 246回答 3
3回答

烙印99

看来您想使用查询?q =搜索某些内容。如果是这种情况,请使用AJAX请求,表单提交不好。但是,如果不是这种情况,请执行以下操作:将JavaScript代码包装在JavaScript函数中。现在通过某些事件(取决于您的要求)侦听器(例如onclick等)调用此函数。
随时随地看视频慕课网APP

相关分类

Python
我要回答