如何将表单的操作发送到vue

时间:2017-03-29 10:40:28

标签: ajax laravel-5 vuejs2

使用Larave 5.4,我有一个用vue构建的表。

表格中的每一行都有以下形式:

<form @submit.prevent="submitForm" class="status-form" action="'/orders/' + row.Id + '/edit'" method="post">
   <input type="hidden" name="status" value="2">
   <button type="submit" class="btn btn-success btn-sm">Sent</button>
</form>

我的路线: Route :: resource(&#39; orders&#39;,&#39; OrderController&#39;,[&#39;除了=&gt; show&#39;]);

单击“已发送”按钮时,我想使用AJAX提交表单。

我的Ajax电话:

$.ajax({
  type: "PATCH",
  headers: { 'X-CSRF-TOKEN' : $('meta[name=_token]').attr('content') },
  url: $(this).attr('action'),
  data: { 'status': 2 },
  success: function(data) {
    alert($(this).attr('action'));
  }
});

当我点击“已发送”按钮时,我会在Firebug中找到它:

PATCH http://highland.local/orders 405方法不允许

看起来,它没有正确地获得表单的操作。 如何在ajax调用中从表单中获取表单的操作?

1 个答案:

答案 0 :(得分:0)

如果您尝试使用未在路由上定义的HTTP方法,则唯一一次从Laravel获得from first import first num = first(numbers, key=lambda x: x < 0, default=0) 响应。

例如,尝试向405 Method Not Allowed路由发出POST请求。

在您的情况下,您的API路线文件中需要GET