我想修改用户在客户端提交的文件,然后再到达我的服务器。要修改它,我想使用与JavaScript通信的Flash小程序。
<form action="" method="post" enctype="multipart/form-data">
<input type="file" id="id_file">
<input type="submit" value="Submit">
</form>
有可能吗?如果是的话,我会很感激如何做到这一点:)
我应该将其转换为字符串吗?或者JS可能会提供一些功能来使这些操作更容易?
$( "form" ).change(function(x) {
//pass file input to Flash applet
x.preventDefault();
flashApplet.proceed($('#id_file').value);
});
function callback(modified_file) {
// Flash applet has modified the file
// Now submit the form with a new, modified file
$('#id_file').value = modified_file;
trigger_submit();
}
该文件可以是视频,音频或图像。
答案 0 :(得分:0)
不要使用提交按钮,而是使用伪装成看似提交按钮的普通按钮,然后您可以检查按钮被点击的时间,做你的东西,然后使用 我会用: 然后是js: 基本上,使用错误的提交按钮,先做你想做的事。document.getElementById("myform").submit();
<form action="" method="post" enctype="multipart/form-data" id="myform">
<input type="file">
<button id="submit">Submit</button>
</form>
document.getElementById('submit').onclick = function() {
//do your flash stuff
};
function callback(){
//here we submit the form
document.getElementById("myform").submit();
// because the file itself has been modified, this is all we need to do.
}