input[type=file] 获取上传文件的内容

上代码:

<input type="file" name="file" id="fileUpload">

jquery:

   $("#fileUpload").change(function () {
        console.log($("#fileUpload")[0].files);
    });

打印结果:
在这里插入图片描述


input file 读取文件内容

<!DOCTYPE html>
<html lang="en">
<head>
    <title></title>
    <script src="js/jquery.min.js" type="text/javascript"></script>  
    <script type="text/javascript">        
        if(typeof FileReader == "undified") {
            alert("您老的浏览器不行了!");
        }
        function showDataByURL() {
            var resultFile = document.getElementById("fileDemo").files[0];
            if (resultFile) {
                var reader = new FileReader();                
                reader.readAsDataURL(resultFile);
                reader.onload = function (e) {
                    var urlData = this.result;
                    document.getElementById("result").innerHTML += "<img src='" + urlData + "' alt='" + resultFile.name + "' />";
                }; 

            }

        } 
        function showDataByBinaryString() {
              var resultFile = document.getElementById("fileDemo").files[0];
            if (resultFile) {
                var reader = new FileReader();
                //异步方式,不会影响主线程
                reader.readAsBinaryString(resultFile);

                reader.onload = function(e) {
                    var urlData = this.result;
                    document.getElementById("result").innerHTML += urlData;
                };
            }
        }
        function showDataByText() {
            var resultFile = document.getElementById("fileDemo").files[0];
            if (resultFile) {
                var reader = new FileReader();

                reader.readAsText(resultFile,'UTF-8');
                reader.onload = function (e) {
                    var urlData = this.result;
                    document.getElementById("result").innerHTML += urlData;
                };
            }
        }
    </script>
</head>
<body>
    <input type="file" name="fileDemo" id="fileDemo" multep/>
    <input type="button" value="readAsDataURL" id="readAsDataURL" onclick="showDataByURL();"/>
    <input type="button" value="readAsBinaryString"  id="readAsBinaryString" onclick="showDataByBinaryString();"/>
    <input type="button" value="readAsText"  id="readAsText" onclick="showDataByText();"/>
    <div id="result">

    </div>

</body>
</html>

监听input上传文件,获取文件名称

在这里插入图片描述

<div class="import-box pr" >
    <span class="model-address-txt">导入文件:</span>
    <input type="text" class="address-input Js_address-input input-wid" readonly>
    <label class="file-box" for="file">
        <span class="look-file">浏览</span>
        <input id="file" type="file" class="file-input Js_file-input" >
    </label>
</div>
//监听input
$(".Js_file-input").on("change",function (e) {
   var e = e || window.event;
   //获取 文件 个数 取消的时候使用
   var files = e.target.files;
   if(files.length>0){
       // 获取文件名 并显示文件名
       var fileName = files[0].name;
       $(".Js_address-input").val(fileName);
   }else{
       //清空文件名
       $(".Js_address-input").val("");
   }
});

获取event下的targetname值,利用length为判断条件,小伙伴,可以先打印一下看看,这样利于理解,不喜勿喷!谢谢

### 回答1: 由于安全性考虑,浏览器不允许通过JavaScript获取input type=file的文件内容。因此,你需要使用其他方法来获取该文件内容。 一种可行的方法是使用HTML5的File API。以下是一个使用jQuery和File API获取文件内容的示例: HTML代码: ``` <input type="file" id="fileInput"> <button id="btn">获取文件内容</button> <div id="fileContent"></div> ``` JavaScript代码: ``` $(function() { $('#btn').click(function() { var file = $('#fileInput')[0].files[0]; if (file) { var reader = new FileReader(); reader.onload = function(e) { $('#fileContent').text(e.target.result); }; reader.readAsText(file); } else { $('#fileContent').text('请选择文件'); } }); }); ``` 这段代码首先获取input type=file元素的文件对象,然后使用FileReader对象读取该文件内容,并将其显示在页面上。请注意,由于安全性限制,该代码只能在本地运行,无法在某些环境中使用。 ### 回答2: 使用Bootstrap无法直接获取input type=file的文件内容,因为Bootstrap是一个前端框架,主要用于构建页面结构和样式。而获取input type=file的文件内容需要使用JavaScript来实现。 要获取input type=file的文件内容,可以使用以下步骤: 1. 通过JavaScript获取input元素,可以使用document.getElementById或者document.querySelector来获取指定的input元素。 2. 给input元素添加change事件监听器,当用户选择了文件后会触发change事件。 3. 在change事件的处理函数中,可以通过event.target.files[0]来获取选择的文件。event.target是事件的目标元素,files属性是一个文件列表,[0]表示获取选中的第一个文件。 4. 可以使用FileReader对象来读取文件内容,通过FileReader.onload事件监听文件内容的读取完成。 5. 在FileReader.onload事件的处理函数中,可以通过event.target.result来获取文件内容,result是一个字符串表示文件的内容。 具体代码如下: ```html <input type="file" id="myFile"> <script> document.getElementById('myFile').addEventListener('change', function(event) { var file = event.target.files[0]; var reader = new FileReader(); reader.onload = function(event) { var content = event.target.result; console.log(content); }; reader.readAsText(file); // 以文本形式读取文件内容 }); </script> ``` 以上代码是一个简单示例,当用户选择了文件后,会将文件内容输出到控制台中。实际应用中,可以根据需要将内容显示到页面中或进行其他处理。 ### 回答3: 要使用Bootstrap获取`<input type="file">`的文件内容,可以通过以下步骤来实现: 1. 在HTML中定义一个`<input>`元素,并设置`type="file"`属性。这将创建一个文件上传按钮,用于选择要上传的文件。 ```html <input type="file" id="fileUpload"> ``` 2. 在JavaScript中,找到这个`<input>`元素,并添加一个`change`事件监听器,以便在选择文件后触发相应的操作。 ```javascript $(document).ready(function() { $("#fileUpload").change(function() { var file = this.files[0]; // 获取选择的文件 var reader = new FileReader(); reader.onload = function(e) { var fileContent = e.target.result; // 获取文件内容 // 这里可以对文件内容进行处理或展示 }; reader.readAsText(file); // 以文本形式读取文件内容 }); }); ``` 3. 在`change`事件监听器中创建一个`FileReader`对象,并为其设置一个`onload`事件。当文件加载完成后,`onload`事件将被触发。 4. 在`onload`事件中,可以通过`e.target.result`来获取文件的内容。根据需求,可以对文件内容进行进一步的处理或展示。 需要注意的是,使用Bootstrap只是用来美化或优化页面样式和布局。要获取文件内容,仍然需要使用JavaScript中的`FileReader`对象来实现。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值