ユーザーが URL を入力できる入力フィールド「#PostTitle」があります。
配列を返す Posts コントローラーのアクションに、ユーザーの入力 (変更時またはフィールドの終了時) を送信したいと考えています。CakePHP がなければ、これは次のようになると思います。
$(document).ready(function(){
$('#PostTitle').change(function(){
$.ajax({
type: 'POST',
url: '/posts/setPostImages',
data: $(this).serialize(),
success: function(data){
do something;
},
error: function(message){
console.debug(message);
}
});
return false;
});
});
Posts コントローラーのアクションは、$imageArray という名前のリンクの配列を設定します (ページを CURL して、そのページ上のすべての画像の配列を返します)。
次に、リクエストを行った後、その配列の内容に依存する要素を更新したいと思います。要素には次のコードが含まれます。
<div id="slider-wrap" class="boxframe">
<div class="coda-slider" id="slider-id">
<?php foreach ($imageArray as $image): ?>
<div class="crop">
<?php echo $this->Html->image($image); ?>
</div>
<?php endforeach; ?>
</div>
</div>
どんな助けでも大歓迎です!
編集:これを試してみると、アクションはまったく呼び出されません:
echo $this->Js->link('update',
array('action' => 'setPostImages'),
array(
'update' => '#selectImage',
'data' => 'www.stackoverflow.com',
'async' => true,
'dataExpression'=>true,
'method' => 'POST'
)
);