- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:jQueryのUIのDialogでページ遷移)
jQueryのUIのDialogでページ遷移
このQ&Aのポイント
- jQueryのUIのDialogを使用してログイン画面を作成しました。
- ログイン画面で各テキストボックスの入力チェックを行い、入力エラーの場合はエラーダイアログを表示します。
- 入力が正常な場合はログインボタンを押すとページ遷移して、入力された値を受け渡します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
$.post("login.php",{ユーザー名,パスワード},function(data){ data=(jsonかなんかで返ってきたデータを解読) switch(data[状態の変数]){ case パスワード不一致: (エラー内容を表す文言を表示させるとかの処理) break; case ログイン成功: (クッキーにトークン発行されたか確認とかしてページ遷移) break; } }) みたいなカンジの処理になるんじゃないでしょうか
その他の回答 (2)
- H240S18B73
- ベストアンサー率65% (190/288)
回答No.3
なんかいろいろと勘違いしてたっぽいので書き直し ボタンが押されたら $("#dialog-form form").submit() してやりゃいいだけですね
- H240S18B73
- ベストアンサー率65% (190/288)
回答No.2
$.postはAjaxの関数です ページ遷移はしません login.phpがやるのは送られてきたパスワードとユーザー名をDBに照らし合わせて それが登録されたものかどうかの判定をしてクッキーなりトークンを発行して ログインできたかできなかったかの返答を返すまで ページ遷移はlogin.phpが返答を返してからです それでちゃんとログイン成功してクッキーにトークンが入ってれば ページ遷移自体は普通にlocation.href="http://......"でもしてやればいいかと できればユーザーがアクセスしようとして「ログインが必要です」と 突っ返されたもとのところに飛ばしてあげるのが理想 あとログインOKなのにクッキーが入ってないようなら 『クッキーを有効にしてください』とかメッセージを表示するのが親切
補足
回答ありがとうございます。 せっかく説明していただいたんですが私の勉強不足で理解ができませんでしたので試しに下記の部分を下記のように記述してみてpostされるのかと思ってブラウザで実行してみましたがページ遷移しませんでした。 buttons: { "ログイン": function() { $.post("login.php"); } } ※login.htmlと同じ場所にlogin.phpを作成しています。 申し訳ありませんがもう少し私にお力を貸していただけませんでしょうか。 宜しくお願いします。