Javascript布尔结果失败
Javascript boolean results failing
为什么这个变量(lanFound)变成未定义?
得到以下输出:
灯泡一刻!:)
当我输入的时候,输出的序列泄露了它!Ajax是异步的,所以true会在代码继续后返回!不管怎样我都会贴出来,可能对某些人有用!
- 测试:DK
- result is: undefined
- /sites/cspdKnowledgeAssemblyPlatform/ApprovedContent/DKCover Letter.docx succeeded
我有一组docx文件,但正在添加对语言的支持,但为了测试已添加的文件(docx),我使用以下代码(OK,这是一个长期的变体,允许我调试):
fileUrl = filePath + fileName;
if (lan != "EN"){
showNotification("testing for: " + lan);
var lanFound = false;
lanFound = checkURL(filePath + lan + fileName);
showNotification("result is: " + lanFound);
if(lanFound){
debugger;
fileUrl = filePath + lan + fileName;
showNotification("found " + fileUrl);
}
}
function checkURL(urlFileName){
$.get(urlFileName)
.fail(function() {
showNotification(urlFileName + " failed");
return false;
})
.done (function() {
showNotification(urlFileName + " succeeded");
return true;
});
}
你可以忽略这个-只是为"showNotification"上下文添加的)
function showNotification(content){
var currentText = $( "#resultpanel" ).html();
currentText = currentText + "<br/>" + content;
$( "#resultpanel" ).html(currentText);
}
您不能以这种方式调用ajax调用,代码将在返回结果之前通过,由于它是异步的,结果作为变量在代码传递它时被读取为未定义。
对不起,当我输入问题时,我意识到答案,但无论如何张贴,因为这可能对某人很方便。
相关文章:
- 奇怪的Javascript结果
- Javascript(jQuery)给了我奇怪的结果
- JSONP请求返回结果,但也触发error_callback
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- 当json解析空响应时,Whatwg-Fetch失败,我该如何防止它
- Javascript,输出结果后页面不断刷新
- 这是使用html快照和谷歌获取的预期结果吗?SEO/SPA
- JsFiddle在分叉后描述失败
- 承诺,如果第一个失败,则返回第二个承诺结果
- 无需重新加载即可播放MySQL结果.AJAX 正在失败
- 咖啡脚本化的 ajax 调用结果在实际成功时失败回调
- Ajax 注册失败不会回显结果
- AngularJS中将筛选器结果绑定到输入失败
- 返回表单提交的结果从 PHP 到 JavaScript,区分成功和失败
- Javascript布尔结果失败
- Node js async.映射尝试失败,结果为空
- Redis客户端和节点js - hgetall方法失败,结果为空
- 在失败之前轮询结果n次(尝试之间有延迟)
- 404而将JS变量推到PHP,调用PHP函数,将结果作为JSON字符串传递给JS,并可能在使用它时失败
- 需要想法显示登录失败的结果在同一网页