2016-12-17 258 views
0

HI我嘗試用JQuery逐行讀取文本文件。用jQuery逐行讀取文本文件

我嘗試這樣的:

function load_file(file, element) { 
    var lines = file.split("\n"); 

    for (var i = 0, len = lines.length; i < len; i++) { 
     save(lines[i]); 
    } 
    $(element).load(file); 

} 

和HTML文件:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication9.WebForm1" %> 

<!DOCTYPE html> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
    <script type="text/javascript" src="Scripts/JFunc.js"></script> 
    <script type ="text/javascript" src="Scripts/jquery-1.10.2.js"></script> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 


     <input type="button" value="load" onclick="load_file('../movie.txt', '#content_area');" /> 
    <div id="content_area"></div> 

    </div> 
    </form> 


</body> 
</html> 

但網頁仍然是空的。

我可以無需逐行閱讀文件。但是,這是一條重要的路線。而不是一行一行。

文本文件看起來像這樣:

  1. 肖申克的救贖
  2. 教父
  3. 教父:第二部分
  4. 低俗小說
  5. 好的,壞的和醜陋
  6. 12憤怒的男人
  7. 辛德勒的名單
  8. 黑暗騎士
  9. 的指環王:王者
  10. 搏擊俱樂部
  11. 星球大戰歸來:情節v - 帝國反擊
  12. 飛越瘋人院
  13. 魔戒首部曲:魔戒
  14. 盜現身
  15. 好傢伙
  16. 星球大戰
  17. 七武士
  18. 矩陣
  19. 阿甘
  20. 上帝之城

謝謝

,如果我只是這樣做:

function load_file(file, element) { 
    //var lines = file.split("\n"); 

    //for (var i = 0, len = lines.length; i < len; i++) { 
    // save(lines[i]); 

    $(element).load(file); 

} 

瀏覽器可以讀取該文件。但不是在同一行每部影片

+0

變量'file'是** **字符串'../ movie.txt',它不是內容文件。如果你'../ movie.txt'.split('\ n')'你得到'['../ movie.txt']'(這不是你正在尋找的)。 – Dekel

+0

oke,但怎麼做呢? – SavantCodeEngineer

+0

如果你想讀取文件,你應該對服務器做另一個請求,以獲得該文件的內容。你可以使用'$ .ajax'(或者'.get')。 – Dekel

回答

2

我解決這樣的:

jQuery.get('movie.txt', function (data) { 

    var lines = data.split("\n"); 

    $.each(lines, function (n, elem) { 
     $('#content_area').append('<div>' + elem + '</div>'); 

    }); 
    console.log(lines);  
}); 
+0

很高興看到你設法解決它自己:)得到了我的投票! – Dekel