Laravel 5.4 - 在javascript函数中使用Controller Route

时间:2017-03-30 20:03:23

标签: javascript laravel-5 datatables

我有一个表(数据表),我有一个编辑图标,我想用参数调用一个路径。

我的功能目前是

function editItem(id)
    {
        //alert(id);
    }

我想做的是致电

UsersController@editItem

并将id传递给控制器​​。

我有点卡住了!

1 个答案:

答案 0 :(得分:0)

您将服务器端逻辑与客户端逻辑混淆。要调用的控制器方法是客户端逻辑中不存在的服务器端组件。

您应该将路由定义传递给JS并使用AJAX调用此URL(jquery或axios是您的朋友)并以异步方式从服务器读取响应。

我尝试用一​​些示例代码解释:

//routes.php
Route::get('/edit', [
  'uses' => 'UsersController@editItem',
  'as' => 'edit-item'
]);

//blade file
<script>
window.routes = {
  editItem: "{{ route('edit-item') }}",
}
function editItem(id)
{
  $.post(window.routes.editItem, { id: id }).then(function(response) {
    console.log(response);
  });
}    
</script>