1

関数を呼び出しているコードがあり、その関数にAjax要求があるため、実行に少し時間がかかりますが、同時に次の行コードが実行されます。次の行コードの実行を最初の行まで停止したいラインコードが実行されています...

これが私のコードです-

    RWM.util.AjaxRequest.getPost(val); 

    alert('d');

そしてAjaxRequestclassの中にgetPost関数があります-

 getPost: function(postno) {

  Ext.Ajax.request(

       {

         url: 'data/php/postnumber.php?mode=getById'

           ,method: 'GET'

           ,params: {
                postno: postno
            }

            ,success: function(response) {
               alert('s');

  }

  });
} 

だからここで私はalert('s')を実行してからalert('d')を実行したい

何か案が ?

4

1 に答える 1

0

alert('d');Neil McGuiganが推奨するように、コールバックブロックを配置します。

RWM.util.AjaxRequest.getPost(val, function() { alert('d'); }); 

getPost: function(postno, callback) {
    Ext.Ajax.request({
        url: 'data/php/postnumber.php?mode=getById'
        ,method: 'GET'
        ,params: {
            postno: postno
         }
        ,success: function(response) {
            alert('s');
            callback();
        }
    });
}

Extフォーラムのサンプルをご覧ください。

于 2012-10-28T17:37:47.903 に答える