【发布时间】:2017-12-17 02:43:49
【问题描述】:
我目前正在试用http://altorouter.com/,到目前为止它对我来说效果很好,除了我遇到的这个问题
我的路线是这样设置的:
$router->map( 'PATCH', '/admin/pages', 'pageController@update');
如果我使用下面的 jquery,路线就完美了:
$.ajax({
type: "PATCH",
url: "/admin/pages",
data: {page_items:page_items, page_name: 'test_page'},
success: function(returned_data)
{
console.log(returned_data);
}
});
但是,无论我在 HTML 中添加什么内容,我都无法以它接受为 PATCH 的方式提交常规表单:
<form action="/admin/pages" method="post">
<input type="hidden" name="form_function" value="edit_theme">
<input type="hidden" name="_METHOD" value="PATCH">
<button type="submit">Save Page</button>
</button>
我已经尝试过“_METHOD”、“_method”、“method”等。它们都不起作用。
我也试过了
method="PATCH"
但这只会导致它执行 GET。
当我在目标页面上回显 $_SERVER['REQUEST_METHOD'] 时,我得到了 ajax 的“PATCH”,而表单只有“POST”。希望有人能帮忙。
【问题讨论】:
标签: php jquery altorouter