AJAX 応答テキストを非同期的に取得して利用する方法
AJAX 開発用のプロトタイプを使用する場合、responseText を取得することが課題となる可能性があります。最初に、onComplete 関数内で結果を取得しようとすると、空の文字列が返される場合があります。これを克服するには、別のアプローチが必要です。
コールバック関数の受け渡し
成功の鍵は、AJAX を開始するメイン関数にコールバック関数を渡すことにあります。リクエスト。プロセスが完了すると、このコールバック関数が呼び出され、スコープ内の responseText にアクセスできるようになります。
この手法を示す例を次に示します。
somefunction: function(callback) { var result = ""; myAjax = new Ajax.Request(postUrl, { method: 'post', postBody: postData, contentType: 'application/x-www-form-urlencoded', onComplete: function(transport) { if (200 == transport.status) { result = transport.responseText; callback(result); } } }); } // Utilizing the callback function to access the responseText somefunction(function(result) { alert(result); });
このアプローチを実装すると、 AJAX 応答テキストを非同期的に取得してコールバック関数内で利用できるため、必要なときにデータに確実にアクセスできます。
以上がPrototype.js で AJAX ResponseText に非同期的にアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。