I want to make an AJAX to bring some data from the database based in a selected dropdown. But i get the error 405 (Method not Allowed). If i go to the console, chroome tell me that is a Route problem: MethodNotAllowedHttpException in RouteCollection.php line 251. but i can't find it. can you help me please?
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
Route::post('/ajaxcobrar', 'CobrosController@getAlumno')->name('ajaxcobrar');
Controller
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);
}