检查Jquery .get()JSON函数是否有效

时间:2015-07-04 13:02:33

标签: javascript jquery json

如果使用以下代码返回要在横幅传送系统中使用的JSON数组。虽然系统中有一些数据填充了导致问题的JSON数组,但这种方法很好。这是一个HTML和Javascript字符串。有没有办法检查以下功能是否已正确执行,如果没有执行辅助操作?

$.get('/X2DFSS46CZKAJ8277/AGS2443WFA', function( data ) {
 if (data != null) {
  $('.side-banner').html('<a href="' + data.bannerUrl + '" rev="2G13' + data.relval + '2SA1X2" target="_blank" rel="nofollow"><img src="' + data.bannerImgUrl + '"></a>');

  if ($('.side-banner-H').length) {
    if (data.secondBannerImgUrl !== '') {
       $('.side-banner-H').html('<a href="' + data.bannerUrl + '" class="advert-skyscraper-landscape" rev="2G13' + data.relval + '2SA1X2" target="_blank" rel="nofollow"><img src="' + data.secondBannerImgUrl + '"></a>');
    }
  }

 } 
}, "json" );

2 个答案:

答案 0 :(得分:0)

您可以使用错误回调:

$.get('/X2DFSS46CZKAJ8277/AGS2443WFA', "json").then(function(data) {

    if (data != null) {

        $('.side-banner').html('<a href="' + data.bannerUrl + '" rev="2G13' + data.relval + '2SA1X2" target="_blank" rel="nofollow"><img src="' + data.bannerImgUrl + '"></a>');

        if ($('.side-banner-H').length) {
            if (data.secondBannerImgUrl !== '') {
                $('.side-banner-H').html('<a href="' + data.bannerUrl + '" class="advert-skyscraper-landscape" rev="2G13' + data.relval + '2SA1X2" target="_blank" rel="nofollow"><img src="' + data.secondBannerImgUrl + '"></a>');
            }
        }
    }

}, function(xhr, textStatus, errorThrown) {
    console.log('Error', errorThrown);
});

答案 1 :(得分:0)

从jquery帮助页面,从jquery 1.5开始,你应该能够做到这一点

$.get('/X2DFSS46CZKAJ8277/AGS2443WFA', function(data) {
    if (data != null) {
        $('.side-banner').html('<a href="' + data.bannerUrl + '" rev="2G13' + data.relval + '2SA1X2" target="_blank" rel="nofollow"><img src="' + data.bannerImgUrl + '"></a>');
        if ($('.side-banner-H').length) {
            if (data.secondBannerImgUrl !== '') {
                $('.side-banner-H').html('<a href="' + data.bannerUrl + '" class="advert-skyscraper-landscape" rev="2G13' + data.relval + '2SA1X2" target="_blank" rel="nofollow"><img src="' + data.secondBannerImgUrl + '"></a>');
            }
        }
    }
}, "json").fail(function() {
      // fail code goes here
});

类似于@dfsq的答案,但重写次数较少