[英]How to synchronise call in jquery or javascript
能告诉我如何在jquery或java脚本中调用syncize方法吗? 其实问题是,我现在请点击一个功能button.And获得一些价值。而让下面的函数调用,我一些时间,我会得到价值后获得未定义的值。 我将以我的例子来解释。 1)我需要点击删除button.I正在逐渐从数据的基础上。而得到这个的DeleteFolder函数调用。还有我会得到价值不确定的价值得到CASENAME值。 那么在我将在这里获得实际价值之后alert(“ CASENAME” + CASENAME);我想我需要像在Java中那样同步此方法。
$(document).on('click', '.del', function(event) {
ROW_ID = $(this).closest(".caseRowClick").attr("id");
//getCaseNameValue();
db.transaction(function (tx) {
var caseName_h = $('.caseName_h').val();
$yoursql = 'SELECT CaseName FROM CaseTable WHERE id ='+ ROW_ID;
tx.executeSql($yoursql, [], function (tx, results) {
CASENAME=results.rows.item(0).CaseName;
alert("CASENAME"+CASENAME);
});
});
deleteData();
deleteFolder();
$(".ctrl").toggleClass("togg");
event.stopPropagation();
});
function deleteFolder(){
alert(CASENAME);
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fs) {
console.log("Root ================********************* " + fs.root.fullPath);
TEXTFILE_PATH=fs.root.fullPath;
fs.root.getDirectory(CASENAME, {create: true, exclusive: false},
function(dirEntry) {
dirEntry.removeRecursively(successfullyDelete, faildelete)
});
});
}
您应该在周围传递该变量( CASENAME )...
或变量应在两个函数的范围内。
尝试这个:
$(document).on('click', '.del', function (event) {
var ROW_ID = $(this).closest(".caseRowClick").attr("id");
var CASENAME;
//getCaseNameValue();
db.transaction(function (tx) {
var caseName_h = $('.caseName_h').val();
$yoursql = 'SELECT CaseName FROM CaseTable WHERE id =' + ROW_ID;
tx.executeSql($yoursql, [], function (tx, results) {
CASENAME = results.rows.item(0).CaseName;
alert("CASENAME" + CASENAME);
});
});
deleteData();
deleteFolder(CASENAME);
$(".ctrl").toggleClass("togg");
event.stopPropagation();
});
function deleteFolder(CASENAME) {
alert(CASENAME);
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function (fs) {
console.log("Root ================********************* " + fs.root.fullPath);
TEXTFILE_PATH = fs.root.fullPath;
fs.root.getDirectory(CASENAME, {
create: true,
exclusive: false
},
function (dirEntry) {
dirEntry.removeRecursively(successfullyDelete, faildelete)
});
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.