【发布时间】:2018-08-30 07:51:40
【问题描述】:
我正在尝试使用 AJAX 填充我的下拉列表,并且我从控制器返回 404 错误消息,而 Ajax 没有捕捉到它...
我在控制器的回报是
return Response()->json(array('error' => '404 car type not found'), 404);
这是我的 JS
$('document').ready(function () {
$('#car_type').bind('changed.bs.select', function () {
$.ajax({
type: 'POST',
url:'carclass/'+$('#car_type').val(),
dataType: 'json',
error: function(XMLHttpRequest, textStatus, errorThrown){
alert('status:' + XMLHttpRequest.status + ', status text: ' + XMLHttpRequest.statusText);
},
success: function( json ) {
$.each(json, function(i, obj){
$('#car_class').append($('<option>').text(obj.name).attr('value', obj.id));
});
$('#car_class').selectpicker('refresh');
}
});
});
});
它正在返回
GET http://localhost:8000/ads/cartype/2 404 (Not Found)
【问题讨论】:
-
那么问题似乎出在服务器端,而不是您的 JS。
-
为什么您的 ajax 正在向 carclass/... 发出 POST 请求,而您提到的返回是对 cartype/... 的 GET 请求?
-
“没抓到” - 没抓到什么?它是否达到了
error:回调但您没有收到明确的消息?是不是发现它是 404 所以点击 'success:' 回调? -
我很抱歉,我意识到这已经得到了回答,我将其标记为重复......似乎我的主要问题是#car_type,它应该是#car_brand。我现在很尴尬