Javascript Laravel5.2和ajax加载资源失败:服务器响应状态为500
您好,我正在尝试使用laravel和ajax创建待办事项列表应用程序。问题是,如果我尝试添加、编辑和删除一项任务,我得到的加载资源失败:服务器响应状态为500 但当我点击带有错误的链接时,返回的数据以json格式显示 视图: 问题在于Javascript Laravel5.2和ajax加载资源失败:服务器响应状态为500,javascript,jquery,ajax,laravel-5.2,Javascript,Jquery,Ajax,Laravel 5.2,您好,我正在尝试使用laravel和ajax创建待办事项列表应用程序。问题是,如果我尝试添加、编辑和删除一项任务,我得到的加载资源失败:服务器响应状态为500 但当我点击带有错误的链接时,返回的数据以json格式显示 视图: 问题在于 Route::post('/tasks',function(Request $request){ $task = Task::create($request::all()); return Response::json($task); });
Route::post('/tasks',function(Request $request){
$task = Task::create($request::all());
return Response::json($task);
});
Route::put('/tasks/{task_id?}',function(Request $request,$task_id){
$task = Task::find($task_id);
因此,我通过添加
\illumb\Http\Request
作为$Request的类型来解决这个问题您没有为此url注册任何路由'/ajax crud/public/tasks',声明它。那么500的错误将发生在第二条路线的柱子上:……没有兄弟。你不能那样申报。您需要将ajax中给定的url作为路由参数传递。例如route::post(/ajax crud/public/tasks)和。指向控制器及其函数,当我添加/ajax crud/public/tom my routes i get Methode时,您将在其中对ajax数据进行处理。不允许
$(document).ready(function(){
var url = "/ajax-crud/public/tasks";
//display modal form for task editing
$('.open-modal').click(function(){
var task_id = $(this).val();
$.get(url + '/' + task_id, function (data) {
//success data
console.log(data);
$('#task_id').val(data.id);
$('#task').val(data.task);
$('#description').val(data.description);
$('#btn-save').val("update");
$('#myModal').modal('show');
})
});
//display modal form for creating new task
$('#btn-add').click(function(){
$('#btn-save').val("add");
$('#frmTasks').trigger("reset");
$('#myModal').modal('show');
});
//delete task and remove it from list
$('.delete-task').click(function(){
var task_id = $(this).val();
$.ajax({
type: "DELETE",
url: url + '/' + task_id,
success: function (data) {
console.log(data);
$("#task" + task_id).remove();
},
error: function (data) {
console.log('Error:', data);
}
});
});
//create new task / update existing task
$("#btn-save").click(function (e) {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
}
})
e.preventDefault();
var formData = {
task: $('#task').val(),
description: $('#description').val(),
}
//used to determine the http verb to use [add=POST], [update=PUT]
var state = $('#btn-save').val();
var type = "POST"; //for creating new resource
var task_id = $('#task_id').val();;
var my_url = url;
if (state == "update"){
type = "PUT"; //for updating existing resource
my_url += '/' + task_id;
}
console.log(formData);
$.ajax({
type: type,
url: my_url,
data: formData,
dataType: 'json',
success: function (data) {
console.log(data);
var task = '<tr id="task' + data.id + '"><td>' + data.id + '</td><td>' + data.task + '</td><td>' + data.description + '</td><td>' + data.created_at + '</td>';
task += '<td><button class="btn btn-warning btn-xs btn-detail open-modal" value="' + data.id + '">Edit</button>';
task += '<button class="btn btn-danger btn-xs btn-delete delete-task" value="' + data.id + '">Delete</button></td></tr>';
if (state == "add"){ //if user added a new record
$('#tasks-list').append(task);
}else{ //if user updated an existing record
$("#task" + task_id).replaceWith( task );
}
$('#frmTasks').trigger("reset");
$('#myModal').modal('hide')
},
error: function (data) {
console.log('Error:', data);
}
});
});
});
Route::get('/tasks/{task_id?}',function($task_id){
$task = Task::find($task_id);
return Response::json($task);
});
Route::post('/tasks',function(Request $request){
$task = Task::create($request->all());
return Response::json($task);
});
Route::put('/tasks/{task_id?}',function(Request $request,$task_id){
$task = Task::find($task_id);
$task->task = $request->task;
$task->description = $request->description;
$task->save();
return Response::json($task);
});
Route::delete('/tasks/{task_id?}',function($task_id){
$task = Task::destroy($task_id);
return Response::json($task);
});
Route::get('/', function () {
$tasks = Task::all();
return View::make('welcome')->with('tasks',$tasks);
});
Route::post('/tasks',function(Request $request){
$task = Task::create($request::all());
return Response::json($task);
});
Route::put('/tasks/{task_id?}',function(Request $request,$task_id){
$task = Task::find($task_id);