如何将搜索参数发送到Flask服务器?

时间:2018-11-19 13:26:40

标签: javascript html flask get web-frontend

这是我的第一个问题!我试图在搜索框中输入搜索词,然后单击“提交”,我希望将搜索词插入此URL:

http://www.hadrians-search.tk/search?search_param=mario?&items_per_page=2&page_number=2

mario将是搜索词。这是我正在测试的搜索页面:

http://cs.oswego.edu/~jmcquaid/CSC-380/search3.html

当我在搜索框中输入诸如ball之类的搜索词并单击Submit(提交)时,这是我得到的URL:

http://hadrians-search.tk/search?search%3Fsearch_param%3D=ball

如您所见,这显然不是我打算获取的URL。

请记住,search3.html只是我正在前端测试的文件:

<!DOCTYPE html>
<html>
<body>

<form id="myForm" action="http://hadrians-search.tk/search?search_param=">
Search: <input type="text" name="search?search_param="><br><br>
<input type="button" onclick="myFunction()" value="Submit form">
</form>

<script>
    function myFunction() {
    document.getElementById("myForm").submit().action="http://hadrians-search.tk/search?search_param=";
    }
</script>

</body>
</html>

因此,基本上,我正在尝试将在搜索框中输入的搜索词发送到Flask服务器,但不能正确发送。我应该尝试HTTP GET请求吗?我最初尝试过此方法,但是我不知道如何将HTTP GET请求与搜索框和按钮集成在一起。因此,我改为尝试使用action,正如您在文件中看到的那样。您能提供的任何建议将不胜感激,谢谢您的宝贵时间。

1 个答案:

答案 0 :(得分:0)

您可以通过GET传递参数。如果具有三个参数,则可以在表单中添加三个元素。你可以做这样的事情。

<!DOCTYPE html>
<html>

<body>
<form id="myForm" method="get" 
action="http://hadrians-search.tk/search">
search_param: <input type="text" name="search_param"><br><br>
items_per_page: <input type="text" name="items_per_page"><br><br>
page_number: <input type="text" name="page_number"><br><br>
<input value="Submit form" type="submit">
</form>
</body>
</html>