2013-07-17 24 views
0

我從$ .ajax調用中獲取數據,但無法正確處理數據。這是我的代碼。

function OnSuccessResultSet(data, status) { 
      var output; 
      for (var i in data.recordset) { 
       output += "<li><a href='#'>"; 
       for (var j = 0; j < metaName.length; j++) { 
        var testVar = metaName[j]; 
        output += " <h2>" + data.recordset[i].testVar+ "</h2>"; 
        alert(data.recordset[i].testVar); 
        alert(testVar); 
        alert(data.recordset[i].LABEL); 
       }; 
       output += "</a></li>"; 
      } 
      $(output).appendTo("#content1"); 
      $('#content1').listview('refresh'); 
     } 

第一個警告給我一個未定義的回。第二次提醒給我LABEL,第三次提醒我LABEL的價值。我的metaName具有來自記錄集的我的元素的所有屬性值。我還用$ .ajax調用填充了我的metaName數組。 我沒有找到我的錯誤。 :/

+0

什麼'metaName ' – iConnor

+0

'metaName'是一個值=「LABEL,CDNUMBER,ARTIST,MUSICTYPE」的數組,更像這樣,我的記錄集具有我的數組的屬性。所以我嘗試獲取值,但它不工作。 –

回答

4

我認爲你需要使用bracket notation代替dot notation這裏,你正在尋找存儲在變量testVar

alert(data.recordset[i][testVar]); 

防爆關鍵的member operator

function OnSuccessResultSet(data, status) { 
    var output, testVar; 
    for (var i in data.recordset) { 
     output += "<li><a href='#'>"; 
     for (var j = 0; j < metaName.length; j++) { 
      testVar = metaName[j]; 
      output += " <h2>" + data.recordset[i][testVar]+ "</h2>"; 
     }; 
     output += "</a></li>"; 
    } 
    $(output).appendTo("#content1"); 
    $('#content1').listview('refresh'); 
} 
+0

謝謝。 U拯救了我的生命:)現在它工作正常:)) –

相關問題