2013-02-09 73 views
-1

我有这个txt文件名contacts.txt包含此提取特定数据:试图与分裂

kate|female|kathryn bailey beckinsale|26-jul-1973|#23 underworld drive|(621) 142-7827|[email protected] 
jessica|female|jessica claire biel|03-mar-1982|27 texas avenue|(53)2344223|[email protected] 
johnny|male|john christopher depp ii|09-jun-1963|711 pirate road|(773) 476-6634|[email protected] 

我的脚本是这样的:

function syncText() { 
var xhr = new XMLHttpRequest(); 
xhr.open("get", "data/contacts.txt", false); 
xhr.send(null); 

    if (xhr.status == 200) { 
    var data = xhr.responseText; 
    var items = data.split("|"); 
    items.sort(); 
    var div = document.getElementById("header2"); 

    for (var i = 0; i < items.length; i++) { 
    var p = document.createElement("p"); 
    var text = document.createTextNode(items[i]); 
    p.appendChild(text); 
    div.appendChild(p); 
    } 
    } else { 
    alert("data retrieval failed..."); 
    } 
} 

的HTML是这样的:

<div id="header2"> 
    <button onclick="syncText()">Load</button>  
</div>` 

我只想检索kat,jessica,johnny ..请帮帮我

+0

那么现在会发生什么? – 2013-02-09 02:17:21

回答

0

应该这样做才能得到唯一的名字:

var items = data.split("\n"); // build an array with each lines 
// \n or \n\r considering that it is separated with line jumps 
// warning: it may also contain an empty value at the end if there's an ending line jump 

var names=[]; 

for (var i=0;i<items.length;i++) { 
    names.push(items[i].split("|")[0]); // read the first value before | and insert it 
} 

// ... 
// whatever is needed to be done with names 
// ... 
+0

它的工作,但它没有定义...为什么是..我 – 2013-02-09 04:24:45

+0

什么是未定义? – 2013-02-09 09:26:18