Php 通过html的提交按钮而不是flash的上传按钮上传文件
我的html表单中至少有50个字段,我集成了flash文件上传器,用于多文件上传 另一个用于flash文件上传器的原因是,在IE中上传文件之前,我们无法获取文件大小。对于获取IE中的文件大小,我使用了flash EAflashuploader集成工作成功 但我的要求有点不同 在EAflashuploader中,当您单击已上载的所有已添加文件时,会显示上载按钮。 但我想禁用这个上传按钮,上传文件应该上传时,我点击 Html提交按钮 简而言之,我想通过html中的提交按钮而不是flash中的上传按钮上传文件 当表单提交时,我可以通过post方法获取所有数据 项目链接: EAFlashUpload链接: EAFlashUpload文档链接: Javascript函数Php 通过html的提交按钮而不是flash的上传按钮上传文件,php,javascript,html,flash,swfobject,Php,Javascript,Html,Flash,Swfobject,我的html表单中至少有50个字段,我集成了flash文件上传器,用于多文件上传 另一个用于flash文件上传器的原因是,在IE中上传文件之前,我们无法获取文件大小。对于获取IE中的文件大小,我使用了flash EAflashuploader集成工作成功 但我的要求有点不同 在EAflashuploader中,当您单击已上载的所有已添加文件时,会显示上载按钮。 但我想禁用这个上传按钮,上传文件应该上传时,我点击 Html提交按钮 简而言之,我想通过html中的提交按钮而不是flash中的上传按钮
function doSendForm() {
EAFlashUpload.uploadFiles();
document.forms["id_form"].submit();
}
HTML代码
<div style="width:450px;height:350;background:#EFEFEF;">
<form name="id_form" id="id_form" method="post" style="margin:0px;padding:0px;">
<div id="EAFlashUpload_holder"></div>
<script type="text/javascript" src="EAFUpload/swfobject.js"></script>
<script type="text/javascript">
var params = {
BGcolor: "#ffffff",
wmode: "window"
};
var attributes = {
id: "EAFlashUpload",
name: "EAFlashUpload"
};
var flashvars = new Object();
var uploadUrl = "simpleupload.php";
if (!document.all) {
uploadUrl = "../" + uploadUrl;
}
flashvars["uploader.uploadUrl"] = uploadUrl;
flashvars["viewFile"] = "EAFUpload/TableView.swf";
flashvars["view.uploadButton.visible"] = "false";
swfobject.embedSWF("EAFUpload/EAFUpload.swf", "EAFlashUpload_holder", "450", "350", "10.0.0", "EAFUpload/expressInstall.swf", flashvars, params, attributes);
function EAFlashUpload_onMovieLoad(errors)
{
if(errors != "")
alert(errors);
}
</script>
<p>First name: <input type="text" name="firstname"></p>
<p>Last name: <input type="text" name="lastname"></p>
<input type="submit" id="id_submit" name="submit" value="submit" onClick="doSendForm();" style="padding:10px;font-size:20px;">
</form>
</div>
var params={
BGcolor:#ffffff“,
wmode:“窗口”
};
变量属性={
id:“EAFlashUpload”,
名称:“EAFlashUpload”
};
var flashvars=新对象();
var uploadUrl=“simpleupload.php”;
如果(!document.all){
uploadUrl=“../”+uploadUrl;
}
flashvars[“uploader.uploadUrl”]=uploadUrl;
flashvars[“viewFile”]=“EAFUpload/TableView.swf”;
flashvars[“view.uploadButton.visible”]=“false”;
swfobject.embedSWF(“EAFUpload/EAFUpload.swf”、“EAFlashUpload\u holder”、“450”、“350”、“10.0.0”、“EAFUpload/expressInstall.swf”、flashvars、参数、属性);
函数EAFlashUpload_onMovieLoad(错误)
{
如果(错误!=“”)
警报(错误);
}
名字:
姓氏:
EAFlashbutton似乎具有灵活的配置选项和Javascript API
您应该能够1)隐藏Flash upload按钮,2)通过Javascript从外部触发上载
1) 隐藏按钮
按钮有一个隐藏按钮,因此您应该能够使用以下内容隐藏它们:
flashvars["view.uploadButton.visible"] = "false";
2) 触发上传
使用Javascript API的 借助flashvars[“查看.上传按钮.可见”]=“错误”;我已禁用上载按钮。我已经调用了doSendForm();函数用于提交按钮的onclick事件。我使用document.forms[“id_form”].submit();请提交表格。表单提交文件后,数据不会过帐到提交的表单。让我知道我必须把uploadFiles()方法放在哪里。我认为应该在flash upload按钮上调用ajax请求。我想您需要等到flash uploader完成后,才能提交外部HTML表单。Javascript API中可能有这样的事件。实际上,Flash uploader的创建者已经考虑到了您的用例。它可以集成到HTML
中,并将表单输入与文件一起发送。看看这个例子: