PHP
1//Pages/top.ctp(トップページ) 2 3<button id="search">テスト</button> 4 5<script> 6$(function() { 7 $('#search').on('click',function(){ 8 $.ajax({ 9 url: "/ajax/hogesearch", 10 type: "post", 11 dataType: "json", 12 }).done(function (response) { 13 alert("success"); 14 }).fail(function (response) { 15 alert("error"); 16 }); 17 }); 18}); 19</script>
PHP
1//AjaxController.php 2namespace App\Controller; 3 4use Cake\Controller\Controller; 5use Cake\Event\Event; 6use Cake\Core\Configure; 7 8class AjaxController extends AppController { 9 10 public function hogesearch() { 11 12 $this->autoRender = false; 13 $this->response->type('json'); 14 $this->response->charset('UTF-8'); 15 16 // JSONデータ 17 $jsonDataList = [ 18 [ 19 'hogehoge' => 'hoge', 20 'test' => 'mogemoge' 21 ], 22 [ 23 'hogehoge' => 'hoge2', 24 'test' => 'mogemoge2' 25 ] 26 ]; 27 28 echo json_encode($jsonDataList,JSON_PRETTY_PRINT); 29 $this->set('jsonDataList', $jsonDataList); 30 $this->set('_serialize', ['jsonDataList']); 31 } 32}
######知りたいこと
<button id="search">テスト</button>
↑こちらをクリックしても、jsonが返って来ないです。
######補足
最終的には、検索ボタンを押した時にAjaxでデータを渡して
JSONで受け取りたいです。今はテストで行なっています。
PHP
1//ajax/hogesearchのブラウザ表示内容 2[ 3 { 4 "hogehoge": "hoge", 5 "test": "mogemoge" 6 }, 7 { 8 "hogehoge": "hoge2", 9 "test": "mogemoge2" 10 } 11]
以上です。
何卒、よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/01 09:43