使用GET方法时丢失url中的其他参数

时间:2015-10-26 10:53:08

标签: php

这是我的表格

<form method="GET" action="/admin.php?rubrique=users&action=detail">
 <select name="id" onchange="this.form.submit()">
  <option value="user1">user1</option>
  <option value="user2">user2</option>
 </select>
</form>

当我更改选择时,我转到/admin.php?id=user1rubrique&amp; action参数已删除!

如何保留这些值(我需要用户GET方法)。

唯一的解决方案是使用一些隐藏的输入吗?

3 个答案:

答案 0 :(得分:7)

浏览器确实没有值附加到action中的现有查询参数,它完全覆盖。只需使用隐藏的表单元素来传输这些静态查询值:

<input type="hidden" name="rubrique" value="users">
<input type="hidden" name="action" value="detail">

它们将与所选值一起作为查询参数发送。

答案 1 :(得分:0)

您需要使用rubriqueaction

的隐藏输入字段
<input type="hidden" name="rubrique" value="users" />

<input type="hidden" name="action" value="detail" />

答案 2 :(得分:0)

您可以获取ID的值,并通过以下方法将其分配给window.location以重新加载页面。

尝试

<form method="GET" action="/admin.php?rubrique=users&action=detail">
    <select name="id" onchange="window.location='/admin.php?rubrique=users&amp;action=detail&amp;id='+this.value">
        <option value="user1">user1</option>
        <option value="user2">user2</option>
    </select>
</form>