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

时间:2009-10-13 17:40:26

标签: html jsp servlets get form-submit

我在这里遇到了一些奇怪的情况。我有一个表单,使用GET方法提交搜索功能。在搜索后的后续页面上,所有变量都显示在URL中,即使它们是空的。例如,如果我搜索等于“你好”的电影标题,我会得到这个:

/ GetResults标题=你好&安培;年=安培;导演=安培;姓名=安培;姓=

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

<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>

2 个答案:

答案 0 :(得分:4)

这很正常。要防止出现此行为,请考虑在表单上使用onsubmit处理程序,该处理程序手动组装URL并重定向。如果你这样做,不要忘记使用启用和禁用的javascript进行测试,以确保两种方案仍然正常。

答案 1 :(得分:0)

我认为这是GET的正常操作。你必须使用GET而不是POST吗?

似乎从URL中不显示变量的相对简单的变化是使用POST方法而不是GET。