如何在不使用JavaScript的情况下隐藏URL中的参数?

时间:2018-08-20 16:05:42

标签: html forms query-string

我的表单是这样的:

<form method="GET" action="target">
   <input type="text" name="filter"/>
   <select name="skill">
      <option>opt1</option>
      <option>opt2</option>
      <option>opt3</option>
   </select>
   <input type="number" name="level"/>
   <input type="submit"/>
</form>

我希望在提交表单时在URL中不显示空参数 ,这是通过 skill 字段发生的,而不是通过级别过滤器,即使它们为空,也会添加到查询字符串中。
它是如何发生的?不使用javascript可以防止这种情况发生吗?

这些字段均不需要提交。

2 个答案:

答案 0 :(得分:0)

没有javascript,这是不可能的。

您可以使用类似jQuery的工具accomplish

注意:使用表单方法POST是提交表单的首选方式,参数作为http请求正文而不是URL提交。

答案 1 :(得分:0)

如果执行表单POST而不是GET,则表单参数将不会出现在查询字符串中。但这需要后端更改。