簡體   English   中英

在Ajax成功函數中返回字符串

[英]Returning string in Ajax success function

但是,我試圖在執行Ajax之后返回一個字符串。 我得到的單詞是undefined而不是字符串。 我知道代碼是異步執行的,但是我不知道如何為我的問題提供解決方案。

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");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM