我是javascript新手,無法找到解決方案。 我已經閱讀了一些類似的問題,但看起來並不像我的問題一樣。從函數返回'undefined'變量
我調用一個方法從SCRIPT1與此代碼:
function turnPage(){
var current = window.now;
var nextpage = getNextPage(current);
alert(nextpage);
}
在SCRIPT2有一個SQLite等:
function getNextPage(Pid) {
db.transaction(function(tx) {
tx.executeSql('SELECT * FROM Page WHERE Pid=' + Pid, [],
function(tx, results) {
nextp = parseInt(results.rows.item(0).NextPage);
//alert(nextp);
return nextp;
}, errorCB);
}, errorCBQuery);
}
如果我用警報的對話框中被調用的函數,變量nextp是2. 但是,如果我返回變量,它會提醒爲'未定義'。 另外,如果我等變量var nextp = 11;通過「db.transaction ...」和函數末尾的return語句,它將返回11而不是2.
是因爲變量未在函數啓動時發送到內部函數? :)
任何想法做什麼?謝謝!
Thans,它的工作! (如果有人使用此代碼,警告中有一個錯字,它應該是alert(nextp),而不是alert(nextpage) – TorK 2012-03-20 11:30:02
gah,true。固定錯字。 – 2012-03-20 11:32:25
@ user1255456記住接受答案,如果它解決了問題 – 2012-03-20 11:51:19