我坚持一些相当简单的事情。我有一个简单的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下面,remove类不起作用所以我知道脚本必须认为发生了错误....
响应数据(其中一些是这样的):
SearchResults […]
0 {…}
SearchItem ----9
DisplayType 0
Shipment {…}
DRAvail false
ProNumber -----9
PickupNumber Not Found
CustomerNumber ----3
BillToAccount ----34
答案 0 :(得分:1)
根据评论。您可以这样处理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