如何去掉<option><select>自动添加的值形成动作url,而不去掉select声明中的id

How to remove the automatically added value from <option><select> to form action url, without removing the id in the select declaration

我实际上在一个我几乎无法控制的网站上工作。

我有一个带有下拉菜单的表单,如下代码所示

<form method="GET" action="/particulier/fichePays">
  <select id="pays">
     <option value="1">Spain</option>
     <option value="2">France</option>
     <option value="3">USA</option>
  </select>
  <button type='submit' class='btn btn-default'>Valider</button>
</form>

这里的问题是,当我单击提交按钮时,selected 选项的值会自动添加到结果 URL 的末尾。例如,如果 i select France,结果 url 是

/particulier/fichePays?pays=2

代替

/particulier/fichePays

我对网站没有很好的控制,所以出于某种原因,我无法删除 select 声明中的 id=pays

请问有什么办法去掉URL末尾自动添加的?pays=valueSelected吗?

使用post方法代替获取方法

你能控制方法吗?

如果是,您可以使用 POST 而不是 GET

根据这个link的区别是:

获取方法:

  • 以 name/value 对
  • 的形式将表单数据附加到 URL
  • 一个URL的长度有限制(约3000个字符)
  • 切勿使用 GET 发送敏感数据! (将在 URL 中可见)
  • 对于用户想要为结果添加书签的表单提交很有用
  • GET 更适合非安全数据,例如 Google
  • 中的查询字符串

POST方法:

  • 在 HTTP 请求的正文中附加表单数据(数据未显示在 URL 中)
  • 没有大小限制
  • 无法将带有 POST 的表单提交加入书签

希望这对您有所帮助。