Javascript无法从方法中获取控件
我对下面的代码没有什么问题。有人能帮忙吗Javascript无法从方法中获取控件,javascript,jquery,Javascript,Jquery,我对下面的代码没有什么问题。有人能帮忙吗 GetStatusingajax methid中的if(currentStatus!=“undefined”)块不工作 无法从GetStatusingajax方法中获取控件 $(文档)。准备好了吗( loadStatus() ); 函数加载状态(x){ $('.a-IRR-table tr')。每个(函数(i){ var val=$(this.find(“td”).eq(0.text(); link=$(this.find(“td”).eq(0.fin
$(文档)。准备好了吗(
loadStatus()
);
函数加载状态(x){
$('.a-IRR-table tr')。每个(函数(i){
var val=$(this.find(“td”).eq(0.text();
link=$(this.find(“td”).eq(0.find(“a”).attr(“href”);
linkTag=$(this.find(“td”).eq(0.find(“a”);
`如果((val!=“-”&(val!=”){
console.log(“val是”+val);
if(验证请求数组(val)){
控制台日志(“内部第二个if”);
}否则{
控制台日志(“其他内部”);
睡眠(1.5*1000);
var updatedStatus2=getStatusingajax(val,link);
log(“UpdatedStatus2为”+UpdatedStatus2);
设置工具提示(linkTag,updatedStatus2);
}
}
});
}
函数verifyrequestArray(id){
var newArray=requestArray.toString().split('-');
log(“NewArray是:”+NewArray);
对于(i=0;i }
fn GetStatusingajax是异步的,您无法使用以下方法获取返回值:
var updatedStatus2 = getStatusUsingAjax(val, link);
您必须创建回调:
function getStatusUsingAjax(val, link, callback){
//...
// do not use return currentStatus, call calback fn instead
callback(currentStatus)
}
并使用以下命令调用它:
getStatusUsingAjax(val, link, function(updatedStatus2){
console.log("UpdatedStatus2 is " + updatedStatus2);
setTooltip(linkTag, updatedStatus2);
});
语句:if(currentStatus!=“undefined”)不在函数getStatusingajax()体中。另外,要检查是否未定义使用:if(typeof currentStatus!=“undefined”)正确的缩进可能会有所帮助@Igor Vujovic,感谢您查看代码。typeof currentStatus的用法!=“undefined”)解决了这个问题。if(currentStatus!=“undefined”)块在getStatusingajax()方法中很好地使用。但我仍然无法在执行一次后将控件取出。在创建回调之后,控件也不会从GetStatusingajax方法中出来。执行一次后,我希望控件返回到'if((val!=“-”&(val!==”)中的if块。但当前GetStatusingajax正在为所有值持续执行