<div id="mmsuploaddiv" class="block">
<form id="mmsuploadform" enctype="multipart/form-data" method="post"
action="create-mms-task.action" target="upload_frame">
<input id="mmsuploadfile" type="file" size="1"
onmouseout="mmsoutfile()" onmouseover="mmsoverfile()"
onchange="uploadImgC(this.form)" name="img">
<input name="op" value="uploadImg">
</form>
<form id="mmsdeleteuploadform"  method="post"
action="create-mms-task.action" target="upload_frame">
<input name="op" value="delImg">
</form>
<iframe id="upload_frame" class="hidden" name="upload_frame"></iframe>
</div>


//上传图片
function uploadImgC(f) {
if (checkImg()) {//验证彩信图片格式
var action0 = f.action;
if (mmsuploadpre(f)) {
f.submit();
}
f.action = action0;
} else {
divAlert('彩信仅支持jpg、gif格式的图片!');
}
}

这是我一个上传图片的功能,上传时对图片格式做验证,只支持jpg和gif的格式,但是我在ie下上传一个png时他第一次可以正常的拦截掉并且弹出对话框,但是我连续第二次继续上传同一张png时就没反应了,在firefox下不存在这个问题,同一个png连续上传都可以拦截掉并弹出对话框,用ie调试js第二次上传同一个png图片时都不触发那个uploadImgC上传图片方法
请大家指点一下
谢了

解决方案 »

  1.   

    是啊,在ie下连续上传同一个png图片,第一次可以正常的拦截掉弹出不支持png格式,第二次就没反应没有触发onchange事件,但是第二次换张还是png的图片就可以拦截,这是怎么了?
      

  2.   

    换成异步上传吧  或者你执行完后加个 location.reload(); 试试
      

  3.   

    失败时
    你怎么处理mmsuploadfile的?