2016-07-18 26 views
2

Ich bin völlig ratlos, warum mein Code nicht ausgeführt wird. In der Konsole gibt es keine Fehler. EDIT: mehr Code hinzugefügtCode wird nicht ausgeführt und zeigt keine Fehler

<!DOCTYPE html> 
    <meta charset="utf-8"> 
    <style> 
    html { 
     font-family: Helvetica, Arial, sans-serif; 
     font-size: 100%; 
     font color: white; 
     background: #333; 
    } 

    #page-wrapper { 
     width: 600px; 
     background: #FFF; 
     padding: 1em; 
     margin: 1em auto; 
     min-height: 300px; 
     border-top: 5px solid #69c773; 
     box-shadow: 0 2px 10px rgba(0, 0, 0, 0.8); 
    } 

    h1 { 
    margin-top: 0; 
    } 

    #fileDisplayArea { 
    margin-top: 2em; 
    width: 100%; 
    overflow-x: auto; 
    } 

    body { 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
    width: 960px; 
    height: 500px; 
    position: relative; 
    } 
</style> 

<body> 
    <div id="page-wrapper"> 

     <h1>File to Matrix</h1> 
     <div> 
      Select a text file: 
      <input type="file" id="fileInput"> 
     </div> 
     <pre id="fileDisplayArea"><pre> 

    </div> 
</body> 
<script> 

    var data = []; //will hold data from file 

    window.onload = function() { 
     var fileInput = document.getElementById('fileInput'); 
     var fileDisplayArea = document.getElementById('fileDisplayArea'); 

     fileInput.addEventListener('change', function(e) { 
      var file = fileInput.files[0]; 

      var reader = new FileReader(); 
      var str = ''; 
      reader.onload = function(e) { 
       str = reader.result; 
       alert("does this even ever run?"); 
       var temp = str.split('\n'); 
       for(var i = 0; i < temp.length; i++) 
        data.push(temp[i].split('\t')); 
      } 
      alert("this runs"); 
     }); 
    } 
</script> 

Der Versuch, in einem .tsv vom Anwender ausgewählt zu lesen, und die Daten in eine umzuwandeln.
Die Zeile reader.onload = function(e){} wird nicht ausgeführt, da die Warnung nie erscheint und die Daten immer noch leer sind.

Jede Hilfe wird geschätzt.

Dank

+0

Diese Website könnte helfen: http://www.javascripture.com/FileReader –

+1

Sie müssen ein [minimales, vollständiges, überprüfbares Beispiel] (http://stackoverflow.com/help/mcve) erstellen: das erforderliche Minimum um den gleichen Fehler wie Sie zu bekommen. Ein guter Anfang wäre (wenn auch nicht unbedingt beschränkt auf) das HTML. – rockerest

+0

Also, was soll der fileReader lesen, du gibst nichts weiter, also gibt es nichts zu laden, also kein "onload" -Ereignis? – adeneo

Antwort

0

Sie verpassen gerade

reader.readAsText(file); 

dem Leser sagen eigentlich die ausgewählte Datei zu lesen.

Arbeitsbeispiel: https://jsfiddle.net/zck7z3aa/2/

Ich habe auch fileDisplayArea.innerHTML = reader.result; den Inhalt der Datei in dem PRE Tag zu zeigen.

+1

Ich wusste, dass ich etwas verpasst habe; Vielen Dank! – averagebegginnercoder