Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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
如何通过Javascript或Jquery将本地文件读入网页?_Javascript_Jquery_Html_File - Fatal编程技术网

如何通过Javascript或Jquery将本地文件读入网页?

如何通过Javascript或Jquery将本地文件读入网页?,javascript,jquery,html,file,Javascript,Jquery,Html,File,背景:(点燃前阅读…) 我希望用户能够从HTML“文件输入”(在本地设备上)中选择文本文件,然后单击上载按钮。我不希望直接上传文件,我希望javascript进行一些验证、格式化,然后将格式化结果显示给用户。其中,用户根据验证和格式设置的结果有多个选项可供选择。(是的,它也在服务器端验证。) 这不是AJAX请求,而是要求用户选择一个文件,然后上传它,同时javascript验证并格式化文件 问题: 是否可以将文件(由用户选择上载)读入HTML网页,用户可以在其中查看并通过Javascript或J

背景:(点燃前阅读…)

我希望用户能够从HTML“文件输入”(在本地设备上)中选择文本文件,然后单击上载按钮。我不希望直接上传文件,我希望javascript进行一些验证、格式化,然后将格式化结果显示给用户。其中,用户根据验证和格式设置的结果有多个选项可供选择。(是的,它也在服务器端验证。)

这不是AJAX请求,而是要求用户选择一个文件,然后上传它,同时javascript验证并格式化文件

问题:

是否可以将文件(由用户选择上载)读入HTML网页,用户可以在其中查看并通过Javascript或Jquery进行解析?如果可能,怎么做


它必须支持基本浏览器Firefox、Opera、Safari、Chrome和IE8+。

最接近的是当前的草稿


您可能需要使用已签名的Java小程序来获得更广泛的支持(但随后您将开始依赖于安装Java插件的人员)。

除了未完成和不受支持的技术之外,我只能想到两种方法

  • 有一个两步流程,用户将其上传到服务器,服务器将其发送回,以便您可以执行任何验证,然后在验证完成后,您将其发送回服务器(不是作为上传,您已经拥有数据)

  • Flash可以访问磁盘,您可以编写一个小的Flash电影,接受一个文件,然后将其交给javascript,但这取决于Flash


  • ,但不要指望它能被用户广泛使用。IE8绝对是不可能的;如果您想获得旧版浏览器支持,必须先将文件上载到服务器。为什么要使用JavaScript读取文件?你不能把上传的文件从服务器端拿出来,并把它包含在服务器端的页面中吗?然后,您可以使用JavaScript来处理文件内容,因为它们当时在DOM中。这个服务器很忙,我希望避免额外的流量,直到我知道传入的信息是好的,或者至少“应该是好的”,这个特定的请求可以触发几百个db请求。我想“预验证”并确保用户能够看到他们发送的内容。我认为flash不允许你读取文件的内容,比如FileReaderHanks(两者都非常方便),我有点遗憾HTML5还没有得到更好的支持。看起来我会被标准上传卡住。不幸的是,对于这种特殊情况,我不能使用Flash或Java之类的插件。FileReader是它自己的规范。它不是HTML5的一部分。