#ajaxform
Вопрос:
Итак, я пытаюсь получить информацию для отображения в выборе с помощью ajax, но при попытке сделать это вживую она переходит непосредственно к .ошибка в части кода. Когда я регистрируюсь в инструментах разработчика из firefox, на вкладке «Запрос» написано только «для этого запроса нет полезной нагрузки», что для меня означает, что он даже не пытался сделать запрос. Это мой код .js:
function get_materias_disponibles_profesor() {
var form = $('#profesor_asignar_materia_form'), //Name of the form
select = $('select', form),
id_profesor = $('input[name="id"]', form).val(), //id extracted from hidden input)
wrapper = $('#profesor_materias'), // Form Wrapper(collapsable div)
opciones = '', //Form options
action = 'get',
hook = 'bee_hook';
if (form.length == 0) return;
//Limpiar las opciones al cargar
select.html('');
// AJAX
$.ajax({
url: 'ajax/get_materias_disponibles_profesor',
type: 'get',
dataType: 'json',
data : {
'_t': Bee.csrf,
id_profesor,
action,
hook
},
beforeSend: function() {
wrapper.waitMe();
}
}).done(function(res){
if(res.status === 200) {
if (res.data.length === 0){
toastr.error('No hay materias disponibles para el profesor.');
select.html('<option disabled selected">No hay opciones disponibles.</option>');
$('button', form).attr('disabled', true);
return;
}
$.each(res.data, function(i, m){
opciones = '<option value="' m.id '">' m.nombre '</option>';
});
select.html(opciones);
$('button', form).attr('disabled', false);
} else {
$('button', form).attr('disabled', true);
toastr.error(res.msg, 'Ups!')
}
}).fail(function(err){
toastr.error('Hubo un error en la petición.', 'Ups!');
$('button', form).attr('disabled', true);
}).always(function(){
wrapper.waitMe('hide');
});
}
get_materias_disponibles_profesor();
И это форма, которую я использую для отображения данных:
<div class="card-body">
<form id="profesor_asignar_materia_form" method="post">
<?php echo insert_inputs(); ?>
<input type="hidden" name="id" value="<?php echo $d->p->id; ?>" required>
<div class="form-group">
<label for="materia">Materias</label>
<select name="materia" id="materia" class="form-control" required>
<option value="">Materia</option>
</select>
</div>
<button class="btn btn-success" type="submit">Agregar Materia</button>
</form>
<hr>
<div class="wrapper_materias_profesor" data-id="<?php echo $d->p->id; ?>"><!-- Listado con Ajax --></div>
</div>
Ответ на это в основном приводит меня к странице 404 с ошибкой, если я получаю прямой доступ к URL-адресу, сгенерированному этим запросом.