Javascript 如何使用ngflow和js进行单次和多次上传
嗨,我正在使用ngflow和angularjs来上传文件,它工作得很好。我得到一个要求,在同一个表单中有两个上传按钮。 一个上载仅用于单个文件,另一个上载用于多个文件,从两个文件中选择的文件需要显示在同一个表中 一种方法是在同一页面上创建两个流实例,然后在其中一个页面上指定single file选项true,但这样我必须创建两个表来显示所选的文件Javascript 如何使用ngflow和js进行单次和多次上传,javascript,java,jquery,angularjs,file-upload,Javascript,Java,Jquery,Angularjs,File Upload,嗨,我正在使用ngflow和angularjs来上传文件,它工作得很好。我得到一个要求,在同一个表单中有两个上传按钮。 一个上载仅用于单个文件,另一个上载用于多个文件,从两个文件中选择的文件需要显示在同一个表中 一种方法是在同一页面上创建两个流实例,然后在其中一个页面上指定single file选项true,但这样我必须创建两个表来显示所选的文件 <div flow-init="{target: '/upload', singleFile: true}"> <
<div flow-init="{target: '/upload', singleFile: true}">
<span class="btn" flow-btn >
<i class="icon icon-file"></i>Upload Single File</span>
</div>
<div flow-init="{target: '/upload'}">
<span class="btn" flow-btn >
<i class="icon icon-file"></i>Upload Multiple File</span>
</div>
上载单个文件
上传多个文件
因此,我目前面临的问题是:
1) 在同一表格中显示从单个和多个文件中选择的文件,如果是从单个文件上载中选择的文件。一旦上传了一个文件,
第二个文件将取代现有文件,第一个文件将被取消。而从多个文件中,它将附加到以前的选择。
2) 如何使用单个文件上载在中发送额外参数。您可以有一个单流实例
<table flow-init="{target: '/upload'}"
flow-file-added="someHandlerMethod($file, $event, $flow)"
><tr><td>
<span class="btn" id="btn-single" flow-btn flow-single-file >
<i class="icon icon-file"></i>Upload Single File
</span>
</tr></td>
<tr><td>
<span class="btn" id="btn-multi" flow-btn >
<i class="icon icon-file"></i>Upload More Files
</span>
</tr></td>
要设置每个文件的自定义参数,应将目标
、标题
或查询
选项设置为函数。
文件:
var singleFile;
$scope.someHandlerMethod = function ($file, $event) {
//$event.target input used to upload the file
// you should be able to get element id by one of these methods:
//$event.target.id
//$event.target.parentNode.id// to get span element id
if ($event.target.parentNode.id == "btn-single") {
singleFile && singleFile.cancel();
singleFile = $file;
$file.isSingle = true;// can be used later to set custom params for the target.
} else {
...
}
}
query: function ($file) {
return {isSingle: $file.isSingle};
}