-2

获得 DOM 后,innerHTML 一切正常,但我不希望将全文放在 div 中。

function loadXMLDoc()
{
    var xmlhttp;
    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        var extractedtext;
        extractedtext=xmlhttp.responseText;
        ;
         document.getElementById("myDiv").innerHTML=extractedtext;



        }
    }
    xmlhttp.open("GET","list2.txt",true);
    xmlhttp.send();
    setInterval (loadXMLDoc, 1000);
}

考虑到它是一个巨大的txt文件,如何在extracttext获得一系列特定行?

4

1 回答 1

1

计数循环,indexOf('\n')直到你完成了你想要的次数

function getLines(haystack, from, toIncluding) {
    var i = 0, j = 0;
    haystack = '\n' + haystack; // makes life easier
    --from;                     // start from "line 1"
    while (from-->0 && i !== -1)
        --toIncluding, i = haystack.indexOf('\n', i + 1);
    if (i === -1) return '';
    j = i;
    while (toIncluding-->0 && j !== -1)
        j = haystack.indexOf('\n', j + 1);
    if (j === -1) j = haystack.length;
    return haystack.slice(i + 1, j);
}

var str = '1\n2\n3\n4';
getLines(str, 2, 3); // "2\n3"
getLines(str, 1, 1); // "1"
getLines(str, 4, 4); // "4"
getLines(str, 1, 4); // "1\n2\n3\n4"
于 2013-10-17T00:58:25.573 回答