当我使用Html.BeginForm在更新项目时提交表单时,似乎无法定义PUT。这是对的吗?
答案 0 :(得分:2)
是的,这是正确的。浏览器仅支持GET和POST以发送表单。你可以使用AJAX:
$.ajax({
url: '/action',
type: 'PUT',
data: { param1: 'value1' },
success: function(result) {
}
});
如果您想要AJAXify表单提交,您可以查看jquery.form插件。
答案 1 :(得分:2)
如果您使用ASP.NET MVC 2,请检查Html.HttpMethodOverride方法和HttpPutAttribute。
ASP.NET MVC 1.0还检查MVC 2源代码。 HttpRequestExtensions.GetHttpMethodOverride方法很酷!
答案 2 :(得分:1)
...一个体面的浏览器如果能够“安静”/正确使用HTML或者说废话会不会这样做?
根据HTML4 spec,Form元素仅支持GET和POST。从技术上讲,任何允许其他动词的浏览器都不符合规范。看起来HTML5会支持其他动词。
编辑:现在看起来我可以链接到两个文档。