搜了好多批量上传的都是收费的,简单写了一个,希望大家给点意见.
shitou254@163.com
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx=" initialize="appinit()" layout="absolute" height="610">
<mx:Script>
<![CDATA[
import mx.controls.Alert;
private var filearr :Array ;
private var dataarr :Array ;
private var files:FileReference;
private var URL:String;
private function appinit():void {
filearr = new Array();
dataarr = new Array();
upb.enabled = false;
}
private function addfile():void {
var file:FileReference = new FileReference();
file.addEventListener(Event.SELECT, addlist);
files = file;
files.browse();
//files = file;
}
private function delfile():void {
dataarr.splice(filelist.selectedIndex,1);
filearr.splice(filelist.selectedIndex,1);
filelist.dataProvider = dataarr;
}
private function setting():void {
main.visible = false;
setw.visible = true;
}
private function setok():void {
URL = upurl.text.toString();
if(URL.length == 0) {
upb.enabled = false;
} else {
upb.enabled = true;
}
setw.visible = false;
main.visible = true;
}
private function emptyb():void {
dataarr = new Array();
filelist.dataProvider = dataarr;
}
private function addlist(e:Event):void {
var fileobject:Object = new Object();
fileobject.filename = files.name.toString();
fileobject.filesize = files.size.toString();
//var i:int = dataarr.indexOf(fileobject,0);
dataarr.push(fileobject);
filelist.dataProvider = dataarr;
// Alert.show(i.toString());
filearr.push(files);
}
private function uploadfile():void {
var request:URLRequest = new URLRequest(URL);
var s:Object
if(filearr.length != 0) {
for(;s=filearr.pop();){
s.upload(request);
s = dataarr.pop();
filelist.dataProvider = dataarr;
}
} else {
Alert.show("请选择要上传的文件!!");
}
}
]]>
</mx:Script>
<mx:Panel x="186" y="120" width="485" height="284" id="main" layout="absolute">
<mx:DataGrid x="10" y="10" width="445" height="160" id="filelist">
<mx:columns>
<mx:DataGridColumn headerText="filename" dataField="filename"/>
<mx:DataGridColumn headerText="filesize" dataField="filesize"/>
</mx:columns>
</mx:DataGrid>
<mx:Label x="26" y="186" text="正在上传:" id="shi" width="77"/>
<mx:Button x="382" y="212" label="上传" width="73" id="upb" click="uploadfile()"/>
<mx:Button x="317" y="212" label="设置" id="sett" click="setting()" />
<mx:Button x="211" y="212" label="清空" width="63" click="emptyb()" />
<mx:Button x="87" y="212" label="删除" width="71" click="delfile()" />
<mx:Button x="10" y="212" label="添加" width="69" click="addfile()" />
</mx:Panel>
<mx:Panel x="186" y="120" width="485" height="284" id="setw" visible="false" layout="absolute">
<mx:Button x="203" y="128" label="确定" click="setok()" />
<mx:Label x="21" y="10" text="接受上传的提交URL" width="107" />
<mx:TextInput x="21" y="36" id="upurl" text=" width="404"/>
<mx:Label x="21" y="68" text="其他GET串(不用填写)" width="107" />
<mx:TextInput x="21" y="86" text=" " width="404"/>
</mx:Panel>
</mx:Application>