一尘不染

如何防止空的GET变量显示在URL中

jsp

我这里有点奇怪的情况。我有一个使用GET方法搜索功能提交的表单。搜索后的下一页上,即使所有变量为空,它们也会显示在URL中。例如,如果我搜索等于“
hello”的电影标题,我将得到以下信息:

/ GetResults?title = hello&year =&director =&firstname =&lastname =

这是正常现象还是我做错了什么?这是我使用的表格:

<form action="/FabFlix/servlet/GetResults" id="search-form" method="get" accept-charset="utf-8">
<p>Movie Title:</p><input type="text" name="title"/>
<br/>
<p>Year:</p><input type="text" name="year"/>
<br/>
<p>Director:</p><input type="text" name="director"/>
<br/>
<p>Star's First Name:</p><input type="text" name="firstname"/>
<br/>
<p>Star's Last Name:</p><input type="text" name="lastname"/>
<br/>
<br/>
<input type="submit"/>
</form>

阅读 180

收藏
2020-06-10

共1个答案

一尘不染

这个是正常的。为防止此行为,请考虑表单上的onsubmit处理程序,该处理程序手动组装URL并重定向。如果执行此操作,请不要忘记启用和禁用javascript进行测试,以确保两种情况都能正常运行。

2020-06-10