する質問をすることでしか得られない、回答やアドバイスがある。24前提サーバーサイドはNode.jsで、フレームワークにExpressを使用しています。現状htmlのinputタグにおけるフォーム送信は正常に受理され、ページ移動するのですが、Ajax通信で同じことをすると、ログイン認証は通過しているものの結果的にページ移動さえされません。router;ソース全体のソースコードですhttps://mega.nz/#!DmZXVYZLattachmentクリップ0気になる質問をクリップするクリップした質問は、後からいつでもマイページで確認できます。クリップした質問に回答があった際、通知やメールを受け取ることができます。自分も答えを知りたい質問者以外のユーザにも役立つ評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。質問の評価を上げたことを取り消します低評価-評価を下げられる数の上限に達しました評価を下げることができません1日5回まで評価を下げられます1日に1ユーザに対して2回まで評価を下げられます質問の評価を下げるteratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。コメントをしてください。送信する質問の評価を下げる機能の利用条件この機能を利用するためには、以下の事項を行う必要があります。00:36ではそのように修正された方が回答が付きやすいかと思います。そのように修正された方が回答が付きやすいかと思います。編集ajaxを利用する場合、何らかの目的のためにブラウザーをフルリロードさせたくないから利用するというケースが大半かと思いますが、何故、非同期でサーバー側と通信を行い、そして、別ページへ遷移させたいのでしょうか?サンプルコードを見る限り、非同期でやるより、今のやり方の方が好ましいように感じますが。(とは言え、今のやり方にもおかしな部分がありますが)ajaxを利用する場合、何らかの目的のためにブラウザーをフルリロードさせたくないから利用するというケースが大半かと思いますが、何故、非同期でサーバー側と通信を行い、そして、別ページへ遷移させたいのでしょうか?サンプルコードを見る限り、非同期でやるより、今のやり方の方が好ましいように感じますが。いわれてしまうと自分はすごく滑稽なことをしてるのかも・・・。ajax通信は部分的にDOMデータを更新する用途ですものね。別の目的にajaxを使用しようとしていて、そこから派生して今回の疑問にたどり解いたという感じです。今回の質問はhtmlのフォーム送信のようなブラウザの動作を、ajaxだけでどのようにすれば実装できるのだろうという知的欲求です。いわれてしまうと自分はすごく滑稽なことをしてるのかも・・・。ajax通信は部分的にDOMデータを更新する用途ですものね。別の目的にajaxを使用しようとしていて、そこから派生して今回の疑問にたどり解いたという感じです。今回の質問はhtmlのフォーム送信のようなブラウザの動作を、ajaxだけでどのようにすれば実装できるのだろうという知的欲求です。今回の質問はhtmlのフォーム送信のようなブラウザの動作を、ajaxだけでどのようにすれば実装できるのだろうという知的欲求です。今回の質問はhtmlのフォーム送信のようなブラウザの動作を、ajaxだけでどのようにすれば実装できるのだろうという知的欲求です。htmlにくっついているフォームのsubmit機能を実行するとpostでサーバーからhtmlドキュメント等を取得した上でurlが切り替わりレンダリングが行われるとおもうのですが(仕組みは理解できていませんが...)、それをajaxのcompleteプロパティ値となるコールバック関数で実装できないかと現在悩んでいます。htmlにくっついているフォームのsubmit機能を実行するとpostでサーバーからhtmlドキュメント等を取得した上でurlが切り替わりレンダリングが行われるとおもうのですが(仕組みは理解できていませんが...)、それをajaxのcompleteプロパティ値となるコールバック関数で実装できないかと現在悩んでいます。修正依頼欄でもお伝えした通り、今回のようなケースではそもそも、ajax通信を行う必要はないかと思います。その上で以下の回答は部分的に参考にして頂ければと思います。以下のコードは質問文のコードをベースにしたコードにはなっていません。}});https://codepen.io/anon/pen/Vxjjwbこちらのコードではjsonplaceholder.typicode.comというデモのAPIを公開してくれているサイトにpostリクエストを送って、postが成功して結果が返ってきたら、他のページへ遷移させるというコードになります。冒頭に記載したとおり、ajaxでリクエストを投げて、結果が返ってきたら他のurlを表示させるということ自体が一般的にはあまり行われないので、単純にここでは、location.hrefの値を変えると、他のページをブラウザーがロードしてくれるのだということだけを読み取って参考にして下さい。});一般的にはajax通信でサーバー側からクライアント側に返すデータ形式はjson`形式であることが多いかと思います。res.send()にobject{}かarray[]を渡して、クライアント側にjsonデータを返すようにしてください。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。クライアントが返されたデータを用いページ移動(url変更とレンダリング)というのを思い浮かべていたのですが、HayatoKamono様のコードをみてみると、どこかのURLにPOSTでデータを送信して、なにかしら返ってきたら、それとは別のURLにアクセスする(GETで)というものに思えてしまいます。HayatoKamono様のコードをみてみると、どこかのURLにPOSTでデータを送信して、なにかしら返ってきたら、それとは別のURLにアクセスする(GETで)というものに思えてしまいます。21:35まず、前提として質問修正依頼の方でお伝えしたとおり、今回やっていること自体がおかしなことをしているので、あまり自分の回答自体が参考になるようなものではないです。部分的に参考にして頂ければと思っています。回答に補足を加えますね。その後に頂いた質問に回答します。前提として質問修正依頼の方でお伝えしたとおり、今回やっていること自体がおかしなことをしているので、あまり自分の回答自体が参考になるようなものではないです。部分的に参考にして頂ければと思っています。回答に補足を加えますね。その後に頂いた質問に回答します。修正依頼欄の最初のコメントでも「とは言え、今のやり方にもおかしな部分がありますが」と、少し触れましたが、質問文に掲載されているコードはおかしいです。loginページにアクセスしてきたユーザーにloginページを表示。ログイン状態ではないユーザーがmypageにアクセスしてきたら、loginページへリダイレクト上の箇条書きをベースにすると、質問文に掲載されているコードの場合、loginページにpostするとloginページでmypageのコンテンツをloginページのurlで表示するといったようなことをしていると思います。ajaxのことは脇において、ご自身の質問文に掲載しているコードを見直してみると良いかもしれません。修正依頼欄の最初のコメントでも「とは言え、今のやり方にもおかしな部分がありますが」と、少し触れましたが、質問文に掲載されているコードはおかしいです。loginページにアクセスしてきたユーザーにloginページを表示。上の箇条書きをベースにすると、質問文に掲載されているコードの場合、loginページにpostするとloginページでmypageのコンテンツをloginページのurlで表示するといったようなことをしていると思います。ajaxのことは脇において、ご自身の質問文に掲載しているコードを見直してみると良いかもしれません。22:04な、なるほど.....。POSTで認証を判別し、サーバー側で控えておき、GETでアクセスさせてそこで判別させるんですね。なんでその発想が浮かばなかったんだろう・・・。おそれいりました(._.)時間を割いていただきありがとうございました。POSTで認証を判別し、サーバー側で控えておき、GETでアクセスさせてそこで判別させるんですね。なんでその発想が浮かばなかったんだろう・・・。時間を割いていただきありがとうございました。キャンセル完了するlink+1ajax通信後に画面遷移する記述がないため遷移しないのだと思います。ajaxは、クライアントから非同期で必要なデータをサーバに送り、サーバーサイドで処理し、クライアントに整形済データを返す、ものなので帰ってきたデータを使い、クライアント側での処理を記載しない限り、クライアント側には通常なにも反映されません。ajax通信の返り値をみてから画面遷移の処理を記載してはいかがでしょうか。評価が高い回答ほどページの上位に表示されます。remove低評価0回答の評価を下げる下記のような回答は推奨されていません。評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。16:54ありがとうございます!画面遷移の処理の方法を調べてみます。画面遷移の処理の方法を調べてみます。頂いたご意見への回答は行っておりません。