-2

如果我们没有设置方法属性<form>然后提交,那么它将使用方法GET

<form>
    <input type="submit" name="foo" value="test" />
</form>

POST如果我们不设置方法属性,如何将默认方法更改为?

4

3 回答 3

5

没有通用的方法可以避免这种情况。如果你想避免它真的很糟糕,你可能想要使用模板语言或者这样编译成 HTML。

于 2012-04-13T19:02:29.497 回答
1

无法更改<form>-Tag 的默认行为。您可以键入 method="post" (或使用编辑器的搜索和替换功能来替换<form<form method='post'使用 JavaScript,这会将这个属性放在任何地方(这在禁用 JavaScript 的浏览器上不起作用)。您也可以使用服务器如果您的页面已生成,请使用 PHP 等语言进行替换。

于 2012-04-13T19:06:36.063 回答
-3

你不应该,规范说 get 是默认方法,你不能真正改变它......

如果您想以牺牲最佳实践和一般体面为代价而变得懒惰,您可以使用 jQuery 来做到这一点:

$("form").attr("method","post");

但这真的很懒惰,我永远不会建议使用它。一开始就对它进行编码并没有太多的工作method="post"

此方法的主要问题是必须激活 JS 才能正确提交表单,因为您的服务器正在等待POST数据,如果 JS 失败,它可能不知道如何处理GET数据,除非您将其设置为同时获取,这可能与首先编写正确的 html 一样多……

于 2012-04-13T19:02:21.053 回答