Php yii ajax xupload表单提交不起作用

Php yii ajax xupload表单提交不起作用,php,yii,yii-extensions,yii-xupload,Php,Yii,Yii Extensions,Yii Xupload,问题1:表单提交不起作用 问题2:如何限制上传文件(例如仅1-5个文件) 状态:使用ajax上传创建表单 我的模型(fadeprecitation.php) 我的视图(_form.php) 提交表格的问题是什么 是的,可以进行文件限制。请确保您遵循这些提交表单的问题是什么 是的,可以进行文件限制。请确保遵循这些您需要做的是创建自定义表单。 从xupload\u表单复制内容并粘贴,删除begin表单-end表单。 将自定义表单中的引用添加到小部件“formView”中。您需要做的是创建自定义表单。

问题1:表单提交不起作用

问题2:如何限制上传文件(例如仅1-5个文件)

状态:使用ajax上传创建表单

我的模型(fadeprecitation.php)

我的视图(_form.php)


提交表格的问题是什么


是的,可以进行文件限制。请确保您遵循这些

提交表单的问题是什么


是的,可以进行文件限制。请确保遵循这些

您需要做的是创建自定义表单。 从xupload\u表单复制内容并粘贴,删除begin表单-end表单。
将自定义表单中的引用添加到小部件“formView”中。

您需要做的是创建自定义表单。 从xupload\u表单复制内容并粘贴,删除begin表单-end表单。
将自定义表单中的引用添加到小部件“formView”中。

Q1:表单提交不起作用,因为XUpload小部件生成自己的表单标记。因此,您生成的HTML中有一个表单被另一个表单占用,您应该使用小部件的
formView
选项指向一个没有表单标记的视图,如中所述

问题2:您应该在小部件配置中使用
maxNumberOfFiles
选项

这一切都应该是这样的:

 <?php
            $this->widget( 'xupload.XUpload', array(
                'url' => Yii::app( )->createUrl( "/fadepreciation/upload"),
                //our XUploadForm
                'model' => $photos,
                //We set this for the widget to be able to target our own form
                'htmlOptions' => array('id'=>'fa-depreciation-form'),
                'attribute' => 'file',
                'multiple' => true,
                //Note that we are using a custom view for our widget
                //Thats becase the default widget includes the 'form' 
                //which we don't want here
                'formView' => 'application.views.faDepreciation._form',
                'options' => array('maxNumberOfFiles' => 5)
                )    
            );
            ?>

Q1:表单提交不起作用,因为XUpload小部件生成自己的表单标记。因此,您生成的HTML中有一个表单被另一个表单占用,您应该使用小部件的
formView
选项指向一个没有表单标记的视图,如中所述

问题2:您应该在小部件配置中使用
maxNumberOfFiles
选项

这一切都应该是这样的:

 <?php
            $this->widget( 'xupload.XUpload', array(
                'url' => Yii::app( )->createUrl( "/fadepreciation/upload"),
                //our XUploadForm
                'model' => $photos,
                //We set this for the widget to be able to target our own form
                'htmlOptions' => array('id'=>'fa-depreciation-form'),
                'attribute' => 'file',
                'multiple' => true,
                //Note that we are using a custom view for our widget
                //Thats becase the default widget includes the 'form' 
                //which we don't want here
                'formView' => 'application.views.faDepreciation._form',
                'options' => array('maxNumberOfFiles' => 5)
                )    
            );
            ?>

只需使用“showForm”参数,如下所示:

<?php
$this->widget( 'xupload.XUpload', array(
  ...
  'showForm' => false,
  ...
));
?>


也许,该选项已添加到xupload的下一个版本中。

只需使用“showForm”参数,如下所示:

<?php
$this->widget( 'xupload.XUpload', array(
  ...
  'showForm' => false,
  ...
));
?>


也许,这个选项已经添加到xupload的下一个版本中。

我知道这是一篇老文章,但也许这个答案会帮助一些人解决这个问题

我发现这是由文件/xupload/views/form.php(默认设置)中的最后一行引起的。看起来if语句在某种程度上起着相反的作用。。。在挖掘假值时,它会呈现代码。例如:

<?php 
echo $this->showForm; 
if($this->showForm) echo CHtml::endForm(); 
echo $this->showForm; 
?>

返回:


也许我遗漏了什么但看起来很奇怪。。。不是吗?

我知道这是一篇老文章,但也许这个答案会帮助别人解决这个问题

我发现这是由文件/xupload/views/form.php(默认设置)中的最后一行引起的。看起来if语句在某种程度上起着相反的作用。。。在挖掘假值时,它会呈现代码。例如:

<?php 
echo $this->showForm; 
if($this->showForm) echo CHtml::endForm(); 
echo $this->showForm; 
?>

返回:


也许我遗漏了什么但看起来很奇怪。。。是吗?

我关注了xupload的维基。文件上传很好,正在工作。但是,当我单击提交按钮时,没有任何操作,也没有显示任何错误。我认为文件限制是'multiple'=>true,到'multiple'=>false,对吗?但我想限制上传1-5个文件。我可以在哪里设置?我关注xupload的wiki。文件上传很好,正在工作。但是,当我单击提交按钮时,没有任何操作,也没有显示任何错误。我认为文件限制是'multiple'=>true,到'multiple'=>false,对吗?但我想限制上传1-5个文件。我可以在哪里集合?