[英]How to use ajax return value from within a function call?
我有一个如下所示的函数,它无法从我调用该函数的地方返回数据值。
function checkifRS(){
$.ajax({
url: 'someURL.php',
success: function(data) {
return data;
}
});
}
任何的意见都将会有帮助...
好吧,一种方法是在ajax成功中使用回调函数
function checkifRS(callback) {
$.ajax({
url: 'someURL.php',
success: function(data) {
callback(data);
}
});
}
并这样称呼它
checkifRS(function(data){
//do something with data
});
像这样处理数据
function checkifRS(handleData) {
$.ajax({
url: 'someURL.php',
success: function(data) {
handleData(data);
}
});
}
在输出“像这样调用”中获取数据
checkifRS(function(output){
// here you use the output
});
使用async: false
JavaScript在浏览器的UI线程中运行,任何长时间运行的进程都将锁定UI,从而使其无响应。 此外,JavaScript的执行时间有上限,浏览器会询问用户是否继续执行。 所有这些确实是糟糕的用户体验。 用户将无法判断一切是否正常。 此外,对于连接速度较慢的用户,效果会更糟。
function checkifRS(){
$.ajax({
url: 'someURL.php',
async: false,
success: function(data) {
return data;
}
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.