【发布时间】:2017-06-29 05:11:18
【问题描述】:
我有一个按钮可以切换我的数据库表中的布尔值。它可以工作,但每次都会重新加载页面,所以我想使用 AJAX 切换它。我不确定如何执行可以为控制器提供所需 ID 的 AJAX 发布请求。这是我目前所拥有的:
TaskController 方法:
public function updateCompleted($id)
{
$task = Task::findOrFail($id);
if($task->completed) {
$task->completed = false;
} else {
$task->completed = true;
}
$task->save();
Session::flash('message', 'Task updated!');
return redirect('tasks');
}
用于切换的按钮(在本例中是 ID 为 1 的第一个任务):
{{ Form::open(array('action' => array('TaskController@updateCompleted', $task->id))) }}
{{ Form::hidden('_method', 'PATCH') }}
@if ($task->completed)
{{ Form::button('<span class="glyphicon glyphicon-ok"></span>', array('class'=>'btn btn-danger', 'type'=>'submit')) }}
@else
{{ Form::button('<span class="glyphicon glyphicon-remove"></span>', array('class'=>'btn btn-danger ajaxSubmit', 'type'=>'submit')) }}
@endif
{{ Form::close() }}
AJAX 不起作用...
$('.ajaxSubmit').click(function(e) {
e.preventDefault();
$.ajax({
url: 'tasks/complete/{id}',
type: 'POST',
success: function(response)
{
console.log("working");
}
});
});
还有路线:
Route::patch('tasks/complete/{id}', 'TaskController@updateCompleted');
如何让 Ajax 工作?谢谢
【问题讨论】: