文件提交问题

时间:2011-08-22 14:26:57

标签: javascript internet-explorer file-io

<form method="POST" enctype="multipart/form-data" action="http://site.com/img">
File: <input type="file" name="file" id="abc" /><br/>  
ID: <input type="text" name="someId" value="123"/>
<input id="submitFormButton" type="submit" value="Upload" name="Upload"> 
</form>

<input type="button" id="btnEditAvatar" value="fakeButton"/>

$("#btnEditAvatar").bind("click", function () { $("#abc").trigger("click"); });
$("#abc").change(function() { $("#submitFormButton").trigger("click"); });

IE 中出现问题。 当按下“abc”按钮选择文件时它会工作(关闭文件对话框后,文件被上传),但是当我按下“btnEditAvatar”按钮时,关闭文件diaog后没有任何反复发生。

我尝试使用“点击”功能而不是“更改”。我试图用“setTimeout”函数调用它,我也尝试使用“onpropertychange”事件处理程序。

http://jsfiddle.net/streamcode9/hAnbQ/

2 个答案:

答案 0 :(得分:1)

相反,如果尝试点击提交按钮,为什么不直接提交表单?

$("#abc").change(function() { $(this).closest('form').submit() });

答案 1 :(得分:0)

尝试其中任何一种:

$("#btnEditAvatar").bind("click", function () { $("#submitFormButton").trigger("click"); });
$("#abc").change(function() { $("#submitFormButton").trigger("click"); });

这将它绑定到提交。

$("#btnEditAvatar").bind("click", function () { $("#abc").trigger("change"); });
$("#abc").change(function() { $("#submitFormButton").trigger("click"); });

这会将其绑定到更改,从而触发提交点击