Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery实时更改事件无法与文件输入一起使用_Jquery_Internet Explorer - Fatal编程技术网

Jquery实时更改事件无法与文件输入一起使用

Jquery实时更改事件无法与文件输入一起使用,jquery,internet-explorer,Jquery,Internet Explorer,似乎无法实现这一点,也不太清楚原因,请使用JQuery 1.6.2作为参考 我正在尝试以下代码: $("#imageUpload input").live('change', function() { var fileName = $(this).val(); var fileExt = fileName.split('.').pop(); var indexPos = $(this).parent().index(); var currId = $(th

似乎无法实现这一点,也不太清楚原因,请使用JQuery 1.6.2作为参考

我正在尝试以下代码:

    $("#imageUpload input").live('change', function() {
    var fileName = $(this).val();
    var fileExt = fileName.split('.').pop();
    var indexPos = $(this).parent().index();
    var currId = $(this).attr('id');

    // check extensions and if invalid replaceWith the input to clear

});
IE 6-9没有任何运气(函数中没有任何东西被调用),Firefox它工作得完美无缺。我做了一些阅读,阅读了IE的live+更改问题在JQuery的1.4+版本中得到了修复。使用委托也有完全相同的问题吗

谢谢你的帮助


这是IE和文件输入类型的问题吗?

我在重新开发时遇到了这个问题。对于最新版本的jQuery(1.7.1),IE7和IE8只会触发一次更改事件。我最后不得不这样做才能让它工作:

  • 将标准更改事件(即非活动)绑定到文件输入
  • 当变更事件触发时,提交表单
  • 立即销毁并创建新的文件输入
  • 将更改事件绑定到新文件输入

  • 似乎是相关的,所以我认为这仍然是IE的一个问题,jQuery无法解决。

    在IE中,jQuery=中的更改事件在经典Javascript中变得模糊,这似乎类似于删除.live('change',function(){并仅使用.change(function(){在IE中对我有效