使用Ajax和cakephp上传文件

使用Ajax和cakephp上传文件,cakephp,Cakephp,我已经建立了一个cakephp网站,允许用户上传文件,所有的工作都很好,但我想显示一个图像说“文件上传”或什么,而它是上传。现在我知道我应该使用$ajax->formhelpers,但我似乎无法实现这一点。有人能给我指一下正确的方向吗 <?php echo $ajax->form(array('type' => 'post', 'options' => array( 'model'=>'Upload', 'update'=&g

我已经建立了一个cakephp网站,允许用户上传文件,所有的工作都很好,但我想显示一个图像说“文件上传”或什么,而它是上传。现在我知道我应该使用$ajax->formhelpers,但我似乎无法实现这一点。有人能给我指一下正确的方向吗

<?php echo $ajax->form(array('type' => 'post',
    'options' => array(
        'model'=>'Upload',
        'update'=>'post2',
        'action' => 'add',
        'confirm' => 'Are you sure?',
        'indicator' => 'loading',
        'before' => '$("#post2").html("Wait a moment")'

    )
)); 
 ?>

    <fieldset>
        <legend><?php __('Add Upload');?></legend>

    <?php echo $form->input('title'); ?>

    <div id="formUpdate">

</div>

    <?php echo $form->input('Uploaded.uploaded_file', array('type' => 'file', 'label' => 'Upload file')); ?>


    </fieldset>
<?php echo $form->end('Submit');?>
</div>

    <div id="post2"></div>

好的,如果您不想使用Ajax上传解决方案,那么可以使用简单的javascript实现。我将解释如何使用jQuery,但您也可以使用任何库或纯javascript实现

因此,创建一个隐藏的div,其中包含您的请等待消息,即:

<div id="wait">File is uploading please wait</div>
这基本上会隐藏表单并显示等待容器。文件上传后,页面将被重定向,因此,您无需担心如何再次显示表单


我已经在我的项目中完成了这项工作,效果非常好。

请缩进您的代码4空格。完美、漂亮、简单!谢谢你的帮助!
function pleaseWait(){
  $('#your_form_id').hide();
  $('#wait').show();
}