javascript - 在ajax成功函数中调用另一个函数是使用返回数据的唯一方法吗?
问题描述
主动学习者在这里。我想通过 ajax 调用检索数据,然后在另一个函数中使用返回的数据。我了解到 ajax 调用是异步的,因此尝试使用回调无济于事。看起来在我的 ajax 调用中调用我的 main 函数是唯一的方法吗?这是一个准确的说法吗?这个帖子让我相信可以简单地将函数定义为一个变量,然后您就可以使用该变量作为返回的数据。这是我在下面的代码片段中尝试的。我的 getChoiceControl 函数中的控制台日志正在工作,但我得到了一个“未定义”,用于设置为此函数的变量的控制台日志。我真的想了解异步调用以及如何使用数据,假设这个问题与异步行为有关。我已经阅读了很多关于 in 的文章,但是由于当我尝试回调时也失败了,所以我想知道在我有限的知识中是否还有其他一些空白。提前致谢!
function createHTML(data){
var tester = getChoiceControls();
console.log(tester);
var arr = data.d.results;
var container = $('.container');
var categoryLinksContainer = $('<div class="wrapTest" />');
for(var i in arr){
var item = arr[i];
var title = item.Title;
categoryLinksContainer.append(
'<div class="test">'+title+'</div>'
);
}
categoryLinksContainer.appendTo(container);
}
function getChoiceControls(){
$.ajax({
url: _spPageContextInfo.siteServerRelativeUrl+"/_api/web/lists/GetByTitle('TestList')/fields?$filter=(Title eq 'TestColumn')",
type: "GET",
headers: {
"accept": "application/json;odata=verbose",
},
success: function (data) {
console.log(data);
return data;
},
error: function (error) {
console.log(JSON.stringify(error));
}
});
}
解决方案
推荐阅读
- apache-spark - 错误:调用 fit() 函数时“Python worker 无法连接回来”
- c# - How do I display details from single column in a modal in Angular 7?
- reactjs - aws amplify auth 自定义注册无法映射未定义
- javascript - 使用变量按值选择jquery集合中的元素
- c# - SharePoint 更新列表项
- python - 从多个文本苍蝇中提取,附加结果
- jbpm - 如何根据用户任务结果设置 BPMN 流程变量?
- swift - 在字符串中创建占位符值的属性文本
- javascript - 分配一个变量以及使用另一个数组的项目迭代 for 循环
- python - 标签值超出有效范围