0为null或不是对象错误

时间:2012-05-16 15:35:59

标签: javascript asp.net

使用以下javascript程序将pdf文件转换为二进制文件。它将在FireFox中正常工作。但在IE中它将显示“0为空或不是对象javascript”。如何解决此问题?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Untitled Page</title>
</head>

<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>


<script>


    $(document).ready(function(){

        $('#document_upload').change(function()
  {
   var fileList = this.files;
   var file = fileList[0];
   create_blob(file,function(blob_string)
   {
    replace_binary_data=blob_string;
    $("#document_binary").val(replace_binary_data);
   }); 
  });    


        function create_blob(file, callback) 
  {
   var reader = new FileReader();
   reader.onload = function()
   { 
    callback(reader.result) 

   };
   reader.readAsDataURL(file);
  }  


    });

</script>    

<body>

    <input type="text" id="document_binary" value=""/>
    <div id="upload_document">
        <input type="file" name="document"  id="document_upload"/>
    </div>

</body>
</html>

1 个答案:

答案 0 :(得分:1)

我很确定IE不支持FileReader(所以你不能因为显而易见的原因而实例化它)。

请参阅http://caniuse.com/filereader - 直到IE10才可用。