我被困在一些相当简单的事情上。我有一个简单的 AJAX GET 请求函数,我需要它来处理响应。它没有发送任何数据,数据只是通过 GET url 进行处理。不幸的是,我从来没有在没有数据的情况下发送出去,虽然我的响应成功返回了 JSON 响应,但如果响应没有任何错误,它不会执行任何应该执行的操作。
这是我的脚本:
<script type="text/javascript">
$(document).on('click', '#pullDetails', function() {
$.ajax({
type:'GET',
url: 'https://webservices.rrts.com/TrackWebApi/api/values/'+$('input[name=proNumber]').val(),
success: function(response) {
$('.errorTitle').addClass('hidden');
$('.errorContent').addClass('hidden');
if ((response.errors)) {
setTimeout(function () {
toastr.error('Validation error - Check your inputs!', 'Error Alert', {timeOut: 5000});
}, 500);
if (data.errors.title) {
$('.errorTitle').removeClass('hidden');
$('.errorTitle').text(data.errors.title);
}
if (data.errors.content) {
$('.errorContent').removeClass('hidden');
$('.errorContent').text(data.errors.content);
}
} else {
$('#carrierReturnData').removeClass('hidden');
$('#carrierReturnData').html(Shipment.Origin.Name);
}
},
});
});
</script>
具体来说,在靠近底部的 ELSE 下面,删除类不起作用,所以我知道脚本一定认为发生了错误......
响应数据(其中一些是这样的):
SearchResults […]
0 {…}
SearchItem ----9
DisplayType 0
Shipment {…}
DRAvail false
ProNumber -----9
PickupNumber Not Found
CustomerNumber ----3
BillToAccount ----34
更新
更新
更新
最佳答案
基于评论。您可以这样处理ajax请求错误。
$.ajax({
type:'GET',
url: 'https://webservices.rrts.com/TrackWebApi/api/values/'+$('input[name=proNumber]').val(),
success: function(response) {
$('.errorTitle').addClass('hidden');
$('.errorContent').addClass('hidden');
$('#carrierReturnData').removeClass('hidden');
$('#carrierReturnData').html(Shipment.Origin.Name);
},
error: function(request, status, error) {
// Do stuff with the errors
}
});
仅供引用,jQuery $ajax
关于jquery - 不带数据的 AJAX GET 请求的响应处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48911779/