1

非同期呼び出しである javascript でtelerik Grid のgrid.submitchanges()(FUNCTION1)を呼び出しており、FUNCTION1 の後にajax 同期コールバック (FUNCTION2 ) が 1 つあります。

FUNCTION1 が非同期呼び出しであるため、FUNCTION1 が完了する前に FUNCTION2 が実行されることがあります。

しかし、FUNCTION1 の完了後にのみ FUNCTION2 を実行する必要があります。

それで、telek grid submitChanges(FUNCTION1) のコールバックを取得する方法はありますか? または telerik grid submitChanges(FUNCTION1) を同期呼び出しにすることはできますか?

コード-:

//関数 1

if (grid != undefined && grid.hasChanges()) {

    grid.submitChanges();
}

//関数 2

$.ajax({
        url: urlForTheController,

       type: 'GET',
      async: false,
        cache: false,
        data: { TotalConAssociation: noOfRows },
        success: function (data) {
            $('#AssociationWithDocument').data('tWindow').close();
            showConcepts(currentConceptIndex);
        },
4

1 に答える 1

0

使用している API の正確な動作を知らなくても (リンクを歓迎します)...

function1 のコード内に function2 への呼び出しを追加するだけです。

もう 1 つの解決策は、両方の関数のシリアル構成を作成し、それを submitchanges のコールバックとして渡すことです。asyncpromisesなど、ネストしすぎないようにするためのライブラリがあります。

于 2014-07-31T16:51:26.923 に答える