微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – 解决IE7错误“输入类型=文件”onchange fire两次?

你有没有遇到这个IE7的错误
<input type="file" id="xxx">

<script> 
     $('#xxx').change(function(){ alert(1) })
</script>

当我点击输入&选择一个文件,警报框第一次显示.然后我点击身体上的空白区域,警报框再次显示.即使我将更改事件绑定到带有JQuery 1.6的input:file(目前最新),也会发生这种情况.

我怎么能以最简单的方式阻止这种情况?谢谢你的所有建议!

解决方法

这是我经过一段时间的“头脑风暴”后所做的:
$('input:file').click(
    function(){
         $(this).one(
              'change',function(){ alert(1) /*do stuff here*/ }
         )
    }
)

每次用户单击输入以选择文件时,我们将事件“更改”绑定一次.因此,每当用户想要选择文件时,事件就会触发一次.

感谢上帝,它有效!谢谢你们.

原文地址:https://www.jb51.cc/jquery/181428.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐