2012-07-30 30 views
6

Tôi có một:IE Java script lỗi Không thể nhận được giá trị của tài sản '0':

<img id="uploadedimage" alt="uploaded image" src="" width="250px" height="250px"/> 

và có một div để hiển thị hình ảnh khi người dùng đã chọn hình ảnh của họ sử dụng mã JQuery này:

$('#BusinessImage').change(function (ev) { 

      var f = ev.target.files[0]; 
      var fr = new FileReader(); 
      var IsImage = false; 

      // check the file is an image 
      if (f.type.match('image.*')) { 
       IsImage = true; 
      } 

      fr.onload = function (ev2) { 
       if (IsImage) { 
        $('#uploadedimage').attr('src', ev2.target.result); 
       } 
      }; 

      if (IsImage) { 
       fr.readAsDataURL(f); 
       ValidFileUpload(); 
      } 
      else { 
       InvalidFileUpload(); 
      } 
     }); 

Tất nhiên, mã này hoạt động tốt trên mọi trình duyệt khác ngoài trình duyệt Satans, Internet Explorer. Tôi gặp lỗi này:

Line: 108 
Character: 13 
Code: 0 
Error Message: Unable to get value of the property '0': object is null or undefined 

Có ai biết điều gì gây ra điều này vì nó hoạt động tốt trong FFX và Chrome.

Cảm ơn

+1

mã trên dòng 108 là gì? Ngoài ra, phiên bản nào của IE? – anAgent

+0

Xin lỗi, ở đây nó là var f = ev.target.files [0]; Tôi cũng đang sử dụng IE 9 và đã thử nó trong 8, cả hai không hoạt động – Funky

+0

Cần một jsfiddle này. IE cho bạn biết rằng ev.target không chứa mảng tệp. – jholloman

Trả lời

8

".files" chỉ hoạt động trên các trình duyệt hỗ trợ HTML5.

tập tin được hỗ trợ trên IE10 nhưng đối với IE9 và các phiên bản đầu bạn phải sử dụng cách khác để có được con đường .:

Để kiểm tra xem các file được hỗ trợ:

if(ev.target.files){ 
    //supported 
    console.log(ev.target.files[0]); 
}else{ 
    //.files not supported 
    console.log(ev.target.value); 
} 
+1

Tôi không nghĩ rằng 'tác phẩm' hoạt động trong IE9. http://caniuse.com/#search=filereader –

+0

Đúng, nói không được hỗ trợ: (Có cách nào khác thay thế không? – Funky

+0

Câu trả lời của tôi cho bạn biết phải làm gì khi tệp không được hỗ trợ. Bạn đã thử chưa? –

Các vấn đề liên quan