2013-11-24 57 views
0

我使用這個功能來讀出我的IndexedDB的logStore的所有信息(是的變量設置正確)的Javascript:添加到字符串,直到開始顯示

當我調用該函數,它顯示了結果,我得到的只是我定義的表格的前兩行。 if(cursor){}片段不會將任何輸出放入表中,但是alert()將顯示所有信息,直到存儲中沒有更多數據。

有沒有人有建議讓數據進入表格?

function readLog() { 
// TODO: Make strings concatenate 
var objectStore = db.transaction(logStore).objectStore(logStore); 

    objectStore.openCursor().onsuccess = function(event) { 

     content = '<table border="1" width="50%"><tr><td width="10%">Event ID</td><td width="10%">Timestamp</td><td width="80%">Message</td></tr>'; // Works 
     content += "<tr><td>Test</td><td>Test</td><td>Test</td></tr>"; // Works 

     var cursor = event.target.result; 

     if (cursor) { 
      content.concat("<tr><td>" + cursor.key + "</td><td>" + cursor.value.timestamp + "</td><td>" + cursor.value.message + "</td></tr>"); // Doesn't work 
      alert("ID: " + cursor.key + " TS: " + cursor.value.timestamp + " Message: " + cursor.value.message); // Works 
      cursor.continue(); 
     } 
     else { 
      content.concat("</table>"); 
      document.getElementById('result').innerHTML=content; 
     } 
    };  
} 

回答

0

concat()返回由該數組組成的數組和其他數組和/或值組成的新數組。你應該寫content = content.concat(...)之類的東西,或者你可以像使用第一個字符串連接一樣使用+=