お世話になっております。
CakePHPにて入力フォーム作っています。
入力フォームで入力したあとに確認ページで描画した後に「戻る」ボタンを押すと入力フォームに戻るが入力した内容はリセットされずに引き継ぐことをしたいです。
hiddenを使えればと思っています。
バージョンは2.8.4です。
index.ctp
<div id="mainContent"> <div class="mdSection1" style="padding: 60px;"> <h2 class="mdTtl2"> <span class="txt1">入力フォーム</span> </h2> <form name="form" method="post" action="/confirm"> <table> <tr> <th colspan=”2″>職業</th> <th colspan=”2″>名前</th> <th colspan=”2″>内容</th> </tr> <tr> <td><select name=job> <option value="">--------</option> <option value="会社員 ">会社員</option> <option value="学生 ">学生</option> <option value="主婦 ">主婦</option> </select></td> <td><input type="text" name="name"></td> <td><textarea name="coment" cols="40" rows="5"></textarea></td> </tr> </table> <input type="submit" value="確認" style="font-size: 14px; font-weight: bold; width: 150px; vertical-align: middle;"> </form> </div> </div>
confirm.ctp
<script type="text/javascript"> function goServletB(){ document.getElementById('form').action = '/index'; } function goServletC(){ document.getElementById('form').action = '/index'; } </script> <div id="mainContent"> <div class="mdSection1"> <h2 class="mdTtl2"> <span class="txt1">確認</span> </h2> <div class="mdSection1"> <h3 class="mdTtl4 mb10"> <?php echo $job ?><?php echo $name ?></span></span> </h3> <ul class="mdNotes2"> <li><?php echo $coment ?></li> </ul> </div> <div class="mdSection2" style="margin-left: 10px;"> </div> <form id='form' name='form' action="/confirm"> <input type="hidden" name="job" value="<?php echo $kaku ?>"> <input type="hidden" name="name" value="<?php echo $rikishi ?>"> <input type="hidden" name="coment" value="<?php echo $coment ?>"> <input type="submit" value="更新" onclick="goServletB();" style="font-size: 14px; font-weight: bold; width: 150px; vertical-align: middle;"> <input type="submit" value="戻る" onclick="goServletC();" style="font-size: 14px; font-weight: bold; width: 150px; vertical-align: middle;"> </form> </div> </div>
Controller.php
App::uses ( 'AppController', 'Controller' ); App::uses ( 'BaseController', 'Controller' ); class Controller extends BaseController { public function index() { } public function confirm() { // 取得とセット /////////////// $this->request->data['job']; $this->request->data['name']; $this->request->data['coment']; $kaku = $this->request->data['job']; $rikishi = $this->request->data['name']; $coment = $this->request->data['coment']; $this->set( 'job' , $job ); $this->set( 'name' , $name ); $this->set( 'coment' , $coment ); } }
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。