[解決済み] jQuery ajax呼び出しの成功後にデータを返す [重複]。
2022-03-20 14:09:45
質問
このようなものがあります。スクリプトを単純に呼び出して、値や文字列を返すものです。
function testAjax() {
$.ajax({
url: "getvalue.php",
success: function(data) {
return data;
}
});
}
しかし、このようなものを呼び出すと
var output = testAjax(svar); // output will be undefined...
この値を返すにはどうすればよいのでしょうか? 以下のコードもうまくいかないようです。
function testAjax() {
$.ajax({
url: "getvalue.php",
success: function(data) {
}
});
return data;
}
解決方法は?
関数からデータを返すには、非同期呼び出しではなく、同期呼び出しを行うしかありませんが、それでは応答を待っている間にブラウザがフリーズしてしまいます。
結果を処理するコールバック関数を渡すことができます。
function testAjax(handleData) {
$.ajax({
url:"getvalue.php",
success:function(data) {
handleData(data);
}
});
}
このように呼び出します。
testAjax(function(output){
// here you use the output
});
// Note: the call won't wait for the result,
// so it will continue with the code here while waiting.
関連
-
親子コンポーネント通信を解決する3つのVueスロット
-
vue3.0プロジェクトのアーキテクチャを構築するための便利なツール
-
vue for 登録ページ効果 vue for sms 認証コードログイン
-
vueの補間表現とv-textディレクティブの違いについて
-
[解決済み] TypeError: $.ajax(...) is not a function?
-
[解決済み] jQueryを使ったAjaxリクエストの中断
-
[解決済み] jQueryでフォームデータをJavaScriptオブジェクトに変換する
-
[解決済み] jQuery Ajax呼び出し後のリダイレクトリクエストを管理する方法
-
[解決済み] どうすればjQueryに非同期ではなく、同期のAjaxリクエストを実行させることができますか?
-
[解決済み] jQuery AJAX送信フォーム
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Vueがechartsのtooltipにクリックイベントを追加するケーススタディ
-
Vue Element-uiは、アイコンを追加するためのツリーコントロールノードを詳細に実装しています。
-
Vueはランニングライト形式のテキストを水平方向にスクロールする機能を実装している
-
vueのグローバルがscss(mixin)を導入。
-
[解決済み】TypeScript-のAngular Frameworkエラー - "exportAsがngFormに設定されたディレクティブはありません"
-
[解決済み】 `string.split is not a function` というエラーの原因は何ですか?
-
[解決済み】React Uncaught Error: 対象コンテナが DOM 要素でない [重複]。
-
[解決済み】ReactJSでエラー発生 Uncaught TypeError: Super expression は null か関数でなければならず、undefined ではありません。
-
nodejs unhandledPromiseRejectionWarning メッセージ
-
Uncaught TypeError: null のプロパティ 'offsetHeight' を読み取れませんでした。