我想制作一个AJAX,根据选定的下拉菜单从数据库中提取一些数据。但我得到错误405(方法不允许)。如果我去控制台,chroome告诉我这是一个Route问题:RouteCollection.php第251行中的MethodNotAllowedHttpException但是我找不到它。你可以帮帮我吗?
HTML
<div class="form-group">
<label class="control-label col-sm-offset-2 col-sm-2" for="persona_id">Alumno:</
<div class="col-sm-2">
<select class="form-control" name="persona_id" id="persona_id">
<option value="0">Seleccionar</option>
@foreach ($personas as $persona)
<option value="{{ $persona->id }}">{{ $persona->nombre . ' ' . $persona->apellido }}</option>
@endforeach
</select>
</div>
</div>
AJAX
$(document).ready(function(){
$('#persona_id').on('change',function(){
//obtengo el id del alumno
var alumno_id = $(this).val();
if(alumno_id){
$.ajax({
type:'POST',
url: "{{url('ajaxcobrar')}}",
data:'alumno_id='+alumno_id,
success:function(
$('#boxCuota').html(result);
}
});
}else{
$('#boxCuota').html('<option value="">Selecciona Alumno Primero</option>');
}
});
});
路线
Route::post('/ajaxcobrar', 'CobrosController@getAlumno')->name('ajaxcobrar');
控制器
public function getAlumno(Request $request)
{
//le paso el valor que traigo del request
$alumno_id = $request::input(['alumno_id']);
$cuotas = DB::table('cuota_alumnos')
->where('persona_id','=',$alumno_id)
->whereIn('estado_id', [3,5])
->get();
return Response::json($cuotas);
}