これは、divを動的に作成し、Phonegapデータベースからデータを取り込むための私のコードですが、(a)データベースから動的部分を追加しません。(b) Rows: エントリは、html コンテンツがダンプされた後、デバッガ コンソールに出力されます。すなわち。同期が取れていないようです:
var newPage;
var qry="SELECT literal,kunyomi from kanji where Unicode in(select b.Unicode from kanji_reading b where substr(b.kunyomi,1,1)='"+yomi+"')";
db.transaction(function (tx)
{
newPage = "<div data-role=page data-url=hi><div data-role=header><h1>" + yomi+ "</h1></div><div data-role=content>";
newPage +="<ul data-role='listview' id='details'>";
var temp="";
tx.executeSql(qry, [], function(tx,res)
{
var i;
var len = res.rows.length;
console.log("records"+len);
for (i=0; i<len; i++)
{
newPage+="<li><span class='tra-info-text'>"+res.rows.item(i).kunyomi+"</span></li>";
}
newPage+="</ul></div></div>";
},null);
var page=$(newPage);
console.log("page:"+page);
console.log("New Page:"+newPage);
console.log("page container:"+$.mobile.pageContainer);
page.appendTo($.mobile.pageContainer);
$.mobile.changePage( page );
});
の出力にconsole.log("New Page:"+newPage);
は、静的部分、つまり tx.executeSQL 部分の前のみが表示されます。tx.executeSQL 内に追加されたものは表示されません。
誰でも助けることができますか?