【发布时间】:2017-08-24 22:29:56
【问题描述】:
我有一个表(数据表),我有一个编辑图标,我想用参数调用一个路由。
我的功能目前是
function editItem(id)
{
//alert(id);
}
我想做的就是打电话
UsersController@editItem
并将 id 传递给控制器。
我有点卡住了!
【问题讨论】:
标签: javascript laravel-5 datatables
我有一个表(数据表),我有一个编辑图标,我想用参数调用一个路由。
我的功能目前是
function editItem(id)
{
//alert(id);
}
我想做的就是打电话
UsersController@editItem
并将 id 传递给控制器。
我有点卡住了!
【问题讨论】:
标签: javascript laravel-5 datatables
您将服务器端逻辑与客户端逻辑混淆了。您要调用的控制器方法是在客户端逻辑中不存在的服务器端组件。
您应该将路由定义传递给 JS,并使用 AJAX(jquery 或 axios 是您的朋友)调用此 url,并以异步方式从服务器读取响应。
我尝试用一些示例代码来解释:
//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>
【讨论】:
document.location = window.routes.editItem