POST表单:如何将GET参数放在action属性中?

时间:2018-03-26 14:15:46

标签: html forms post get

我有这样的表格:



<!DOCTYPE html>
<html>
    <body>
        <form action="draft.html?test=1">
            <button type="submit">Valid</button>
        </form>
    </body>
</html>
&#13;
&#13;
&#13;

但是当我点击有效时,它并没有重定向到draft.html?test = 1但是重定向到draft.html。我做错了什么?

感谢您的帮助。

编辑:我知道我应该支持<input type="hidden">,但我想将它用于POST表单。

编辑2:这是一个愚蠢的问题,只要我将表单的方法更改为POST,问题就解决了。

3 个答案:

答案 0 :(得分:2)

如果您绝对需要将其置于操作属性,则可以使用method="POST"

<!DOCTYPE html>
<html>
    <body>
        <form action="draft.html?test=1" method="POST">
            <button type="submit">Valid</button>
        </form>
    </body>
</html>

否则,如果您想通过GET使用

发送数据
<!DOCTYPE html>
<html>
    <body>
        <form action="draft.html" method="GET">
            <input type="hidden" name="test" value="1">
            <button type="submit">Valid</button>
        </form>
    </body>
</html>

答案 1 :(得分:1)

当您提交带有method="GET"(默认)的表单时,操作的查询字符串将替换为表单中的数据。

不要将数据放在action属性中。把它放在隐藏的输入元素中。

<form action=draft.html>
    <input type=hidden name=test value=1>
    <button>Valid</button>
</form>

答案 2 :(得分:1)

这是你想要的吗?

&#13;
&#13;
<form action="draft.html">
    <input type="hidden" name="test" value="1">
    <button type="submit">Valid</button>
</form>
&#13;
&#13;
&#13;