<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”事件处理程序。
答案 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"); });
这会将其绑定到更改,从而触发提交点击