php - 通过html的提交按钮上传文件而不是flash的上传按钮

标签 php javascript html flash swfobject

我的 html 表单中至少有 50 个字段,并且我集成了用于多个文件上传的 flash 文件 uploader 。

用于 flash 文件 uploader 的另一个原因是我们无法在 IE 中上传文件之前获取文件大小。为了在 IE 中获取文件大小,我使用了 flash。

EAflashuploader 集成成功。

但我的要求有点不同。

在 EAflashuploader 中,当您单击所有添加的文件时,会出现上传按钮。 但我想禁用此上传按钮,上传文件应该在我点击时上传 HTML 提交按钮。

简而言之,我想通过 html 中的提交按钮而不是 flash 中的上传按钮上传文件。

当表单提交时,我可以在 post 方法中获取所有数据。

项目链接:http://www.triggergmbh.com/EAFUpload/PHP/simpleupload.php

EAFlash 上传链接:http://www.easyalgo.com/examples/eaflashupload/simpleupload.aspx

EAFlashUpload 文档链接:http://www.easyalgo.com/support/docs/eaflashupload/

Javascript 函数

    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;">&nbsp;  
</form>
</div>  

最佳答案

EAFlashbutton 似乎具有灵活的配置选项和一个 Javascript API。

您应该能够 1) 隐藏 Flash 上传按钮和 2) 通过 Javascript 从外部触发上传。

1) 隐藏按钮

按钮有一个 visible property , 所以你应该能够用这样的东西隐藏它们:

flashvars["view.uploadButton.visible"] = "false";

2) 触发上传

使用 uploadFiles() method的 Javascript API。

关于php - 通过html的提交按钮上传文件而不是flash的上传按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13659839/

相关文章:

php - 函数 getResult 调用

javascript - 为什么这些查询独立工作而不是一起工作?

javascript - React Native-如何将状态从组件传递到其父组件

Javascript insideHTML 与其他页面的 session PHP

javascript - 为什么 bootstrap 下拉菜单仅在包含 bootstrap-responsive.css 时才有效?

html - 如何避免在 CSS float 中换行

html - 将页面宽度固定为 100% CSS

php - 字符串的正则表达式看起来像 PHP 中的 javascript 对象

php - 如何将记录从Server1 db1 table1复制到Server2 db2 table2?

php - ffmpeg后台?