2013-05-17 30 views
1

我能夠獲取sqlite數據顯示在Icenium控制檯窗口但不是ListView。這裏是我的代碼:Cordova如何將SQLite數據顯示到kendo ListView中?

var dbresult; 

function queryDB(tx) { 
    tx.executeSql('SELECT * FROM DemoTable', [], querySuccess, onError); 
} 
function querySuccess(tx, results) { 
    dbresult = results; 
    var len = results.rows.length; 
    console.log("DEMO table: " + len + " rows found."); 
    $("#displayResult").empty(); 

    for (var i = 0; i < len; i++) { 
     console.log("ID = " + results.rows.item(i).id + "Data = " + results.rows.item(i).data); 
    } 

    $("#myListView").kendoMobileListView({ 
     dataSource: kendo.data.DataSource.read({data: results.rows.item().id, group: "id"}), 
     template: $("#myTemplate").html(), 
     fixedHeaders: true 
    }); 
} 

index.html中

<div id="myListView"></div> 

<!--Template--> 
<script type="text/x-kendo-template" id="myTemplate"> 
<h3>${id}</h3> 
<p >${data}</p> 
</script> 

我認爲這是錯誤的東西對我的數據源,但不知道怎麼樣?

can any1 help?

謝謝。

+0

這當然聽起來像是你在正確的軌道上。建議:轉到[此鏈接](http://coenraets.org/blog/2011/10/sample-app-using-the-phonegap-database-api/)並查看 Christophe Coenraets的「employeelist.js」例。還要注意他的index.html如何包裝employeelist.js。 – paulsm4

+0

找到答案,看下面 – jameslcs

回答

1

找到答案,只需將sql查詢結果放入一個數組即可。然後使用模板中的數組。

0

您的代碼的主要問題是您正在讀取項目的屬性而不是包含數據行的數組。

數據源:kendo.data.DataSource.read({data: results.rows.item().id, group: "id"}),

而應使用行:

數據源:kendo.data.DataSource.read({data: results.rows, group: "id"}),

相關問題