函数返回undefine,即使我在返回之前检查了变量是否未定义
function returns undefine even if i checked the variable is not undefined before returning
我在一个函数中有一个非常简单的jquery ajax调用,但我得到了一个非常奇怪的错误。这是一个非常简单的功能
function checkLogin() {
$.ajax({
url: "checkLogin.php",
success: function(data) {
alert(data); //this does print what I want to see
return data; //this however returns undefined!
}
});
}
//some button onclick
var login_status = checkLogin();
alert(login_status); //shows undefined!
这可能会帮助您:控制台日志返回未定义的
基本上,由于AJAX是异步的,所以警报将在return语句之前调用。
您可以通过切换两个表达式的顺序(或完全删除警报)来修复它:
$.ajax({
url: "checkLogin.php",
success: function(data) {
return data;
alert(data);
}
});
或者使用Promise接口:
$.ajax({
url : "checkLogin.php",
success : function(data){
return data;
}
}).then(function() { alert(data); });
相关文章:
- 检查数组中是否存在字符串值,并返回找到的数组值js
- 检查文本区域是否为空总是返回false
- 检查一个元素是否有一个类与另一个类总是返回true
- Javascript函数用于检查数字并返回
- 如果我返回表,检查 Ajax 调用是否为 200 OK的最佳方法是什么
- $.ajax 检查返回字符串是否为“错误”
- 使用“in”关键字检查 0 始终返回 true
- hasOwnProperty 在对照父对象属性进行检查时返回 true
- 如何检查服务器是否返回未定义然后忽略它
- Javascript:检查函数本身的相等性,而不是返回值
- 检查从ajax/php返回的数据
- 当chrome检查器为jQuery变量返回[object object]时,如何返回实际数据
- 我的单选按钮没有从foreach循环中获得值,表单验证返回'必填字段'即使已检查
- 函数返回undefine,即使我在返回之前检查了变量是否未定义
- 如何返回一页并检查调用该操作的页面
- 下划线's每次检查回调的{}返回
- Javascript:检查对象,如果[condition],则返回x
- ajax 返回带有循环的图像长度,检查最后一个循环
- onsubmit=“返回检查表(this);” 对于我的表单来说似乎是空的
- 如何从php脚本返回检查值到调用页面