Как сделать переменную JavaScript глобальной в phoneGap API
Сейчас я учусь использовать PhoneGap, и обучение идет отлично, но я застрял с глобальной переменной в PhoneGap Api. На самом деле сначала я получаю результат из XML-файла, а затем вставляю данные в базу данных. Я сделал эту работу, но теперь я хочу получить последний идентификатор вставленной строки, а затем вставить в другую таблицу, потому что в XML есть подузлы.
function populateDB(tx) {
tx.executeSql('DROP TABLE IF EXISTS fruit');
tx.executeSql('DROP TABLE IF EXISTS fruit_benefit');
tx.executeSql('CREATE TABLE IF NOT EXISTS fruit (id INTEGER NOT NULL PRIMARY KEY, fname,fsname,fruit_icon,fruit_image)');
tx.executeSql('CREATE TABLE IF NOT EXISTS fruit_benefit (id INTEGER NOT NULL PRIMARY KEY, benefit, fruit_id)');
$.ajax({
type: "GET",
url: "data.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('fruit').each(function(){
var fname = $(this).find('fname').text();
var fsname = $(this).find('fsname').text();
var fruit_icon = $(this).find('fruit_icon').text();
var fruit_image = $(this).find('fruit_image').text();
//$('<div class="items" id="link_'+fname+'"></div>').html('<a href="'+fsname+'">'+fname+'</a>').appendTo('#lbUsers');
db.transaction(function(transaction) {
transaction.executeSql('INSERT INTO fruit (fname,fsname,fruit_icon,fruit_image) VALUES (?,?,?,?)',[fname, fsname, fruit_icon, fruit_image],function(transaction, results){
var lastId = results.insertId;
},nullHandler,errorHandler);
});
alert(lastId);
});
}
});
}
Соответствующие строки:
var lastId = results.insertId; //The last inserted id is shown here.
alert(lastId); //I want to show last inserted id here
Я пробовал как глобальную переменную JavaScript, так и локальное хранилище, но ни один из них не работает.