但是,我正在尝试在 Ajax 执行后返回一个字符串;我得到的是“未定义”一词而不是字符串。我知道代码是异步执行的,但我不明白如何为我的问题找到解决方案。
JS
function aggregator(field){
var query = '{"aggs": { "group_by_date": { "terms": { "field": "' + field + '" } } } }';
$.ajax({
url: 'index.php',
type: 'post',
data: {
qSet: query
},
success: function(message){
return message;
}
});
}
var results = aggregator("transactionDate");
document.getElementById("results").innerHTML = results;
如何使 HTML 中的元素具有返回值?
最佳答案
欢迎来到异步编程。您必须在 ajax 函数的回调中处理返回值,或者使用某种基于 Promise 的延迟队列。
要快速解决您的问题,请尝试第一种技术:
function aggregator(field,element){
var query = '{"aggs": { "group_by_date": { "terms": { "field": "' + field + '" } } } }';
$.ajax({
url: 'index.php',
type: 'post',
data: {
qSet: query
},
success: function(message){
document.getElementById(element).innerHTML=message;
}
});
}
aggregator("transactionDate","results");
关于javascript - Ajax 成功函数中返回字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44376910/