2016-03-31 17 views
0

WebSQL kullanıyorum. Verilerin eklenmemesini sağlayan Async Block'a veri eklemeye çalışıyorum. Bu döngü durumundaChrome Uzantısı: Veri eklenmiyor ve getirilmiyor

Sorun);

function fetchData(){ 

    var xhr = new XMLHttpRequest(); 
    xhr.open("GET", "http://localhost/x/fetch.php", true); 
    xhr.onreadystatechange = function() { 
     if (xhr.readyState == 4) { 
      // JSON.parse does not evaluate the attacker's scripts. 
      var resp = xhr.responseText; 
      if(resp != null) { 
       var json = JSON.parse(resp) 
       console.log(resp); 
       var data = json['data']; 
       if(data != null) { 
        openDatabase('documents', '1.0', 'documents', 5*1024*1024, function (db) { 
         alert('Called'); // This is called after below two calls. 
         insertRecord(db); 
         fetchRecord(db); 
        }); 
        //var dbConnection = openDbConnect(); 
        //createTable(dbConnection); 

        for(var a=0;a <= data.length;a++) { 
         alert(data[a].title); 
        } 
       } 

      } 

     } 
    } 
    xhr.send(); 
} 

JSON

{"data":[{"id":"1","title":"- Parts I & II”,”CODE”:”xxx”,”product_url":"http:\/\/www.example.com","image_url":"http:\/\/ecx.images-example.com\/images\/I\/61ujIIMyW7L.jpg","price":"$25.00"},{"id":"2","title”:”AJDJDDJDr”,”Code”:”XX”,”product_url":"http:\/\/www.example.com","image_url":"http:\/\/dc.images-example.com\/images\/I\/41jFVZL72YL.jpg","price":"$10.99"}]} 
+0

Herhangi bir hata konsolda oluyorsunuz; ve içerik komut dosyası veya arka plan sayfası veya açılır sayfa komut dosyası mı? – itzmukeshy7

+0

@ itzmukeshy7 Bu bir arka plan sayfasıdır. Evet hata alınıyor 'Yakalanmamış TypeError: 'undefined' özelliğinin 'title' özelliği okunamıyor – Volatil3

+0

' data'da neler oluyor? – itzmukeshy7

cevap

0

bu deneyin dökümü: Burada

for(var a = 0; a <= data.length; a++) { 
       ^

Eğer 0 başlayarak Kod aşağıda verilmiştir ve data.length'a döngü

for(var index in data){ 
    alert(data[index].title); 
} 
: dizi indeksi olarak dizilerle döngü Yani

böyle for...in kullanabilirsiniz a <= data.length - 1 VEYA a < data.length

for(var a = 0; a < data.length; a++) { 

VEYA

for(var a=0; a <= (data.length - 1); a++) { 

yerine for döngü kadar 0 döngü başlar

İlgili konular