本日の目標が一段落したので、ビールのみながら技術メモです。やりたいことコメントフォーム。送信ボタンを押すと、メッセージはデータベースに保存され、リダイレクトなしで送信完了のメッセージを出す。これは一例で、実際の使い方はいろいろ。画面遷移せずに...•TODOリストを追加する•ON/OFFを切り替える•記事を削除するとかね。ヘルパーAJAXヘルパーってあるんだけど今回は使いません。更新されてないっぽいしね。2.xでも使えるのは確認してますが。ダウンロードしてインストールする必要もある。CakePHPに標準であるJsHelperでできるので、こっちでやります。JsHelperコーディングjQueryはあらかじめ読み込んでおいてください。$this->Form->end();?>でどこかに下のようなdivを置いておく。追加で色々なオプションを渡すことができます。今は空っぽだけど、送信後に何か入ります。すると、Jsヘルパーがjavascriptを作ってくれます。作ってくれるんだけど、このままでは出力される場所があませんので指定してあげます。下記をbody閉じタグの直前に書く。?>そうすると、JsHelperで作られたすべてのスクリプトがここに出力される。falseを追加しましょう。するとフォームが出力されたすぐ後にjavascriptが出力されます。array('Js');でJSヘルパーを読み込む。コードには'Js'と書いてください。array('RequestHandler');はリクエストがajaxかどうか判別するのに必要です。'ajax');ここがポイントすね。successはビューファイル。ajaxはレイアウトファイルです。?>app/view/messages/success.ctp12<!--送信完了メッセージ-->メッセージが送信されました!以上です。1.メッセージを入力2.送信ボタンをクリック3.“送信中...”を表示4.“送信中...”が消える5.メッセージがデータベースに保存される6.送信完了をお知らせという流れになるはず。参考ビデオとても分かりやすいです。SawadaフリーランスUXエンジニアビジョンとデザインとコードが大事おすすめの記事チャット構築にトライして今日一日ガンバった結果をこっそりメモしよう。workabroad.jp。