ホームページ >バックエンド開発 >PHPチュートリアル >JavaScript - Ajax の非同期の問題
ajax
里面的回调函数是返回data再执行函数里面的代码
还是不等data返回就直接执行函数里面的代码
はどこですか?ajax
里面的回调函数是返回data再执行函数里面的代码
还是不等data返回就直接执行函数里面的代码
はどこですか?
successのコールバック関数は、データが正常に返された後に実行される関数であり、データが取得されるまで実行されないことを意味します
その他の状況には、beforeSend(送信前)、complete(リクエスト完了後)などがあります。 )、エラー (リクエストエラー) ) コールバック
非同期によるトラブルについてよくわかりませんが、例を教えていただけますか?
データを返してから関数内のコードを実行する必要があります = = データを返さずに実行する = = エラーを待っていませんか?
ajax
的全称AJAX = Asynchronous JavaScript and XML
(非同期 JavaScript および XML)。
先に質問に答えると、成功した場合、データが正常に返されるまで関数は実行されません。応答がない場合は、しばらく待機します。この時間は通常、ネットワークの遅延時間です。自分で設定することもできます。
素晴らしい jquery
框架的ajax
について簡単に話しましょう。
通常は、名前+値の形式でこのように使用します。
async
リクエストが非同期で処理されるかどうかを示すブール値。デフォルトは true です。 false に設定すると、非同期がオフになります。この時点で、1 つのリクエストによりインターフェイスが非常にスタックします。
beforeSend(xhr)
リクエストを送信する前に実行する関数。
cache ブラウザがリクエストされたページをキャッシュするかどうかを示すブール値。デフォルトは true です。
complete(xhr,status)
リクエストが完了したときに実行される関数 (リクエストが成功または失敗した後、つまり成功関数とエラー関数の後に呼び出されます)。
contentType データをサーバーに送信するときに使用されるコンテンツ タイプ。デフォルトは「application/x-www-form-urlencoded」です。
context は、すべての AJAX 関連のコールバック関数の「this」値を指定します。
data
サーバーに送信するデータを指定します。
dataFilter(data,type) XMLHttpRequest の生の応答データを処理するために使用される関数。
dataType
予想されるサーバー応答のデータ型。
error(xhr,status,error)
リクエストが失敗した場合に実行される関数。
global グローバル AJAX イベント ハンドラーがリクエストに対してトリガーされるかどうかを指定するブール値。デフォルトは true です。
ifModified 最後のリクエスト以降に応答が変更された場合にのみリクエストが成功するかどうかを指定するブール値。デフォルトは false です。
jsonp は、jsonp 内のコールバック関数の文字列を書き換えます。
jsonpCallback は、jsonp 内のコールバック関数の名前を指定します。
password は、HTTP アクセス認証リクエストで使用されるパスワードを指定します。
processData リクエストを通じて送信されたデータがクエリ文字列に変換されるかどうかを指定するブール値。デフォルトは true です。
scriptCharset は、要求された文字セットを指定します。
success(result,status,xhr)
リクエストが成功したときに実行される関数。
timeout
ローカルリクエストのタイムアウトを設定します(ミリ秒単位)。
従来のブール値。パラメータのシリアル化の従来のスタイルを使用するかどうかを指定します。
type
リクエストのタイプ (GET または POST) を指定します。
url
リクエストを送信する URL を指定します。デフォルトは現在のページです。
username は、HTTP アクセス認証リクエストで使用されるユーザー名を指定します。 これにより、ユーザーのログインとパスワードをシミュレートできます。
xhr XMLHttpRequest オブジェクトの作成に使用される関数。
リクエストしたインターフェイスがデータで正常に応答した後、この成功関数をコールバックします。そのため、サーバーが正常に処理している限り、返されるデータは必要なデータです
質問に対する答えは上で述べたので繰り返しませんが、非同期の問題についてだけ聞きたいと思います。