Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery逐行读取上传的文件_Jquery - Fatal编程技术网

Jquery逐行读取上传的文件

Jquery逐行读取上传的文件,jquery,Jquery,我正在尝试读取一个使用jquery逐行上传的文本文件,我如何才能做到这一点?我当前的代码如下所示: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Split input</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js">

我正在尝试读取一个使用jquery逐行上传的文本文件,我如何才能做到这一点?我当前的代码如下所示:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Split input</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
</head>

<body>
    <input type="file" id="file" />
    <input type='button' id='load-file' value='Load'>
    <div id="file-content"></div>
</body>

<script>        
    ( function ( $ ) {
        $( '#load-file' ).click( function () {

            if ( ! window.FileReader ) {
                return alert( 'FileReader API is not supported by your browser.' );
            }

            var $i = $( '#file' ), input = $i[0];

            if ( input.files && input.files[0] ) {
                file = input.files[0];
                fr = new FileReader();
                fr.onload = function () {
                    $( '#file-content' ).append( $( '<div/>' ).html( fr.result ) )
                };
                fr.readAsText( file );
            } else {
                alert( "File not selected or browser incompatible." )
            }
        } );
    } )( jQuery ); 
</script>
</html>

分割输入
(函数($){
$(“#加载文件”)。单击(函数(){
如果(!window.FileReader){
返回警报(“您的浏览器不支持FileReader API”);
}
var$i=$('#file'),input=$i[0];
if(input.files&&input.files[0]){
file=input.files[0];
fr=新文件读取器();
fr.onload=函数(){
$('#文件内容').append($('.html(fr.result))
};
fr.readAsText(文件);
}否则{
警报(“未选择文件或浏览器不兼容。”)
}
} );
})(jQuery);

因此,我希望逐行读取txt文件中的每一行。

如果文件已上载,则需要在服务器上读取。根据您的代码示例,您可能希望使用
FileReader
对象来读取客户端上的文件。如果是这样,将
fr.result
字符串按新行拆分,并通过生成的数组循环。是否要在客户端读取该文件,对吗?