如何更改发送到HTML表单的URL?

6
假设我们有:
 <form action="xxx">
     <input type="checkbox" id = "checkbox" name="checked" value="1">
     <input type="submit">Submit</input>
 </form>"

当单击提交按钮时,URL 应该类似于 "xxx?checked=1"。在这种情况下,我想将另一个参数附加到 URL 中。我知道使用隐藏值是一种选择,但我们是否有更直接的方法?请建议。谢谢。

隐藏输入有什么问题吗?在大多数正常情况下,它将是解决问题的非常恰当的方案。 - Brad Koch
你已经在进行任何jQuery处理吗? - karthikr
@BradKoch 我知道在大多数情况下,隐藏参数是一个好的解决方案。但在我的应用程序中,由于某些未知原因,它会导致IE上出现其他错误。 - Edmond
@karthikr 如果您有除隐藏参数之外的其他想法,能否请举一个简单的例子?谢谢。 - Edmond
@BradKoch。首先感谢您。我简化了情况,以便您能够理解我的问题。实际上,我们希望在特定条件下传递附加参数。使用隐藏参数,它将被传递到IE中的URL(在其他浏览器中,一切正常)。这就是为什么我正在寻求替代方案的原因。 - Edmond
显示剩余2条评论
1个回答

3
事实上,URL 取决于您用于发送表单的方法。这是在 method 属性 上设置的,在 <form> 标签 上。

action 的 URL 可以是任何有效的 URL,因此要添加额外的属性,例如 something=1other=2,您可以设置以下内容:

<form action="xxx?something=1&other=2">
    <input type="checkbox" id="checkbox" name="checked" value="1">
    <input type="submit">Submit</input>
</form>

提交表单将会发送 GET 请求 xxx?something=1&other=2&checked=1

我尝试过的是:$('form').attr('action', "xxx?&something=1"); 但是看起来问号后面的东西被浏览器移除了。 - Edmond
那么在提交表单之前,您需要通过JavaScript更改URL吗? - laconbass

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接