2014-03-04 89 views
0

我開發了使用JQuery獲取JSON數據的工具,但問題是某些變量不會放置它們的值,並且我只能使用變量名。此代碼爲什麼我不能在JQuery中獲取變量值

$(document).ready(function(){ 
$('.HTML').each(function(){ 
var call = $.getJSON('http://test-khamsat-support-gig.blogspot.com/feeds/posts/default/-/Break?max-results=10&orderby=published&alt=json-in-script&callback=?',function(data){ 
var cont = data.version; 
    }); 

    var th = $(this); 
    var b = th.html(), 
      a = b.match(/[^[\]]+(?=])/g); 
      if(a){ 
      if(a[2] == 'one'){ 
       th.append("<h1>'+cont+'</h1>") 
      } 
      } 
    }); 
    }); 

,因爲它裏面的內容我blog飼料代碼將只是在我的博客上運行

+1

是一個跨域請求? –

+3

首先,在ajax請求中,你不能這樣做 - http://stackoverflow.com/questions/14220321/how-to-return-the-response-from-an-ajax-call –

+0

第二,因爲'cont'是一個變量'th.append(「

」+ cont +「

」)' –

回答

4

嘗試

$(document).ready(function() { 
    $('.HTML').each(function() { 
     //store the reference to the element to use inside the callback 
     var th = $(this); 
     $.getJSON('http://test-khamsat-support-gig.blogspot.com/feeds/posts/default/-/Break?max-results=10&orderby=published&alt=json-in-script&callback=?', function (data) { 
      var cont = data.version; 

      //move this inside the ajax callback to support async nature 
      var b = th.html(), 
       a = b.match(/[^[\]]+(?=])/g); 
      if (a) { 
       if (a[2] == 'one') { 
        //use proper string concatenation here 
        th.append('<h1>' + cont + '</h1>') 
       } 
      } 
     }); 
    }); 
}); 
+0

非常感謝你,它非常棒。當我能夠做到時(6分鐘後),我會選擇你的答案作爲正確答案。 – abdel

相關問題