重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

jsで質問です。
formをsubmitしてサーバー側で処理が行われて処理が完了したら、フロント側で処理をしたいのですが、処理が完了したかどうかわかる方法はあるのでしょうか。

Ajaxなど使用すると画面が更新されないので処理完了したことはわかりますが、サーバ側でname属性に紐付くめのを更新しても反映されないので、何か良い方法がないでしょうか

A 回答 (5件)

他力本願ですが、上記の質問をコピペしてAIに質問にしたら、過剰なぐらい親切丁寧に回答してくれますよ(^^)



https://gemini.google.com/app
https://chatgpt.com/
    • good
    • 0
この回答へのお礼

ありがとうございます。
話には聞いてましたが、ここまでとは。ありがとうございます

お礼日時:2025/02/01 17:38

なんか以前にそういう処理をするアプリを作ることになったような覚えがあります。


やり方は、No.2さんの回答にあるとおりです。
js側の初期処理にて、サーバ側で設定された変数の値を見て、処理前か処理完了後かを判定してjsの処理を切り変えるって感じでした。
もちろん、処理完了後に必要となるデータがあれば、サーバ側で用意してフロント側に渡してあげます。
    • good
    • 0

直接サーバーにアクセスしてログを確認しないとわかりません。


AjaxでもRESTでも応答内容はサーバーが発信する物しかありません。

ブラウザのデバッグモードを使えば、最低でもサーバーにたいする呼び出しと戻り値、HTTPステータス位は確認できます。
    • good
    • 0
この回答へのお礼

ありがとうございます。仰る通りで後で気づきました

お礼日時:2025/02/01 17:37

こんにちは



何をご質問なさりたいのかよくわかりませんけれど・・

formをsubmitした場合、サーバ側の処理が完了すれば、通常は結果を送信します。
(サーバ側のプログラムがそのようになっていなければ、行われませんが・・)
ブラウザはこれを受け取って、新しいページとして表示します。

>処理が完了したかどうかわかる方法はあるのでしょうか。
「誰が」知りたいのか不明ですが、少なくともユーザは画面が変わったことでわかります。
(その前に遷移待ちの状態になるので、「送信された」こともわかりますが・・)


一方で、Ajaxはスクリプトを利用してサーバと送受信する方法です。
submit時とは異なり、画面の遷移は行われません。

>サーバ側でname属性に紐付くめのを更新しても反映されないので~
サーバ側で何をしようとしているのか不明ですが、通常、Ajaxを利用する場合は、サーバーからのレスポンスを受け取って、スクリプトで必要部分の更新や追加などを行います。


ごく簡単に言えば・・
Subit
・ブラウザが、サーバからの送信を受け取り、ページを更新する。
Ajax
・スクリプトを利用して送受信を行い、ページ(の一部)を書き換える。
といった感じでしょうか。

前者の場合は、基本的にスクリプトは必要ありません。
後者は、画面遷移をせずにページの部分更新などを行う際に用いられます。
(ページの一部に「最新のRSS」を表示するとか)
    • good
    • 0

サブミットすると再表示されますので、


フロント側としては初期表示と同じになります

サーバー側でフラッシュスコープで値を渡し、jsでは初期化処理にてその値があるかどうかで実行する処理を記載してください
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A