0

jquery フォーム プラグインを使用して、ajax 経由で画像をアップロードしようとしています。リクエストを行ったのと同じページにプロセスと保存されたバージョンの画像を表示できるように、応答をファイル名にしたいです。これは十分に簡単なはずです。私は Cakephp と jquery の初心者ですが、丸 3 日間、さまざまな方法でこれを実行しようとしており、次から次へと障害に遭遇しました。とにかく - いくつかのコード:

私は次のフォームを持っています:

<?php echo $this->Form->create('Tile', array('type'=>'file', 'action' => 'uploadImage')); ?>
<div id="TileImageUpload">
        <?php echo $this->Form->input('upload_image', array('type' => 'file'));?>
        <?php echo $this->Form->button('upload image', array('onClick'=>'$(\'#TileNewtileForm\').ajaxSubmit({target: \'#TileImageUpload\''));?> 
 </div>
 <?php echo $this->Form->end(__('Submit')); ?>

これにより、ユーザーが画像を選択できるようになり、タイル コントローラーの uploadImage アクションに送信されます。

function uploadImage() {
$this->layout = 'ajax';
//process the image in here and save a copy of it, then return the images name
echo 'imagename';   
}

返されるものは、(チュートリアルと私がドキュメントで作成したものによると) #TileImageUpload に配置されると想定されています。これは、応答のターゲット div です。しかし、実際には、imagename とだけ表示されている uploadImage のビューに移動するだけです。ドキュメントに画像を追加できるように、画像名をリクエストを行ったのと同じページに戻す必要があります。

何がうまくいかないのですか?

4

1 に答える 1