2013年5月3日金曜日

[CakePHP]add フォームを追加できるページ

/app/views/exams/multi_add.ctp を準備し、<body> 部に以下を記述する。
<div id="add">
</div>
<a href="/php/cake/exams/add" id="link1262083738" onclick=" event.returnValue = false; return false;">Add exam score</a>
<script type="text/javascript">
//<![CDATA[
Event.observe('link1262083738', 'click', function(event) {
 new Ajax.Updater('add','/php/cake/exams/add', {
  asynchronous:true,
  evalScripts:true,
  insertion: Insertion.Top,
  requestHeaders:['X-Update', 'add']
  })
 }, false);
//]]>
</script>
通常は ajax ヘルパーの $ajax->link() を使用すれば add.ctp を <div id="add"> に追加表示することができるが、そのままでは 1 つ分のフォームしか表示できないので自前で Ajax.Updater を書き、オプションに insertion: Insertion.Top を追加することでリンクをクリックする度にフォームが追加されるようにしてみた。

0 件のコメント:

コメントを投稿