2016-12-20 12 views
0

ベンダーとクライアントのさまざまなドメインを持つ100以上の電子メールIDを持つテキストファイルがあります。テキストファイルを3つのカテゴリにパースし、htmlとして表示

例:

[email protected],[email protected] 

私はxyz.comとgyx.com同様にretuns別のものとの電子メールIDを抽出して表示するボタンを配置したいです。 PHPがなければ、私はローカルサーバーをインストールしていません。

どこから始めたらいいかわかりません。

これは現在テキストファイルを読むために使用しているコードです。文書は私が出力されたデータのすべてをつかむだろうjQueryのを使用して、アップロードしたら

<!DOCTYPE html> 
<html> 
    <head> 
    <title>Read File (via User Input selection)</title> 
    <script type="text/javascript"> 
    var reader; 
    function checkFileAPI() { 
     if (window.File && window.FileReader && window.FileList && window.Blob) { 
      reader = new FileReader(); 
      return true; 
     } else { 
      alert('The File APIs are not fully supported by your browser. Fallback required.'); 
      return false; 
     } 
    } 

    function readText(filePath) { 
     var output = ""; //placeholder for text output 
     if(filePath.files && filePath.files[0]) {   
      reader.onload = function (e) { 
       output = e.target.result; 
       displayContents(output); 
      };//end onload() 
      reader.readAsText(filePath.files[0]); 
     }//end if html5 filelist support 
     else if(ActiveXObject && filePath) { //fallback to IE 6-8 support via ActiveX 
      try { 
       reader = new ActiveXObject("Scripting.FileSystemObject"); 
       var file = reader.OpenTextFile(filePath, 1); //ActiveX File Object 
       output = file.ReadAll(); //text contents of file 
       file.Close(); //close file "input stream" 
       displayContents(output); 
      } catch (e) { 
       if (e.number == -2146827859) { 
        alert('Unable to access local files due to browser security settings. ' + 
        'To overcome this, go to Tools->Internet Options->Security->Custom Level. ' + 
        'Find the setting for "Initialize and script ActiveX controls not marked as safe" and change it to "Enable" or "Prompt"'); 
       } 
      }  
     } 
     else { //this is where you could fallback to Java Applet, Flash or similar 
      return false; 
     }  
     return true; 
    } 

    /** 
    * display content using a basic HTML replacement 
    */ 
    function displayContents(txt) { 
     var el = document.getElementById('main'); 
     el.innerHTML = txt; //display output in DOM 
    } 
</script> 
</head> 
<body onload="checkFileAPI();"> 
    <div id="container">  
     <input type="file" onchange='readText(this)' /> 
     <br/> 
     <hr/> 
     <h3>Contents of the Text file:</h3> 
     <div id="main"> 
      ... 
     </div> 
    </div> 
</body> 
</html>  
+0

どこから始めるのかわからない理由は、説明したように、あなたがしたいことが全くわかりません。 – RamblinRose

+0

あなたはドラッグアンドドロップを使用しようとしていますか? – Jhecht

+0

これはあなたの古い質問を解決しますか?そうであれば、解決済みとマークしてください。あなたはあまりにも良い評判を得ることができます。 –

答えて

0

は、ここで私はかかるだろうハイレベルのアプローチです。

var output = $('#main').val() 

そして、私は2個の異なるセット(@xyzリストと@gyxリスト)に出力変数からデータを解析するためにいくつかのロジックを記述します。また、出力をフォーマットして呼び出す準備が整いました。これで、必要な2つのデータセットが得られ、ボタンを押したときにそれらを呼び出すことができます。

ボタンのクリック状態に基づいてjQueryでイベントを作成します。状態に応じて、メソッドは適切なリストを選択し、出力を表示します。

したがって、ボタンを押すたびに適切なデータを抽出するのではなく、最初のページの読み込みですべてのデータを前面に読み込むことができます。データを更新するまではデータは変更されませんので、ボタンを使用してどのリストが表示されるかを切り替えるだけです。

0

メールアドレスリストを検索して、ドメインに一致するIDまたはidに一致するドメインを表示するように思えます。最初に私は上記のアドバイスを受け取り、あなたのファイルの内容を変数に移します。

これは電子メールアドレスのカンマ区切りのリストと、here's a plnkrの機能を示しています(ファイルの読み込みコードなどはありません)。

あなたの条件に基づいてアドレスリスト内の一致を見つける関数です。

関連する問題