【问题标题】:Upload file data from input of type file in a form using javascript and jquery使用 javascript 和 jquery 从类型文件的输入中上传文件数据
【发布时间】:2016-02-16 15:44:59
【问题描述】:

我有一个文件类型的输入我需要从这个表单中获取文件数据而不刷新页面 我正在尝试使用此功能

function submitForm(form){
  var url = $(form).attr("action");
  var formData = {};
  $(form).find("input[name]").each(function (index, node) {
     formData[node.name] = node.value;
  });
  $.post(url, formData).done(function (data) {
     alert(data);
  }); 
}

但是这个函数获取表单输入的值,但我需要获取所有文件数据(tmp_name、file_name、file_type ...)
所以任何人都可以帮助我吗
提前致谢

【问题讨论】:

    标签: javascript forms upload


    【解决方案1】:

    也许您可以通过 id 引用您输入的文件类型,然后获取files 属性以获取有关文件的信息。 然后,您可以遍历文件,例如读取 File 对象的 name、size 和 type 属性。

    https://developer.mozilla.org/en-US/docs/Using_files_from_web_applications https://developer.mozilla.org/en-US/docs/Web/API/File

    例如

    $("#theForm").submit(function(e) {
      submitForm(this);
      e.preventDefault();
    });
    
    function submitForm(form) {
      var url = $(form).attr("action");
      var formData = {};
      formData.filesInfo = [];
      var files = $('#inputFile').prop("files");
    
      $(files).each(function() {
        var fileInfo = {};
        fileInfo.name = this.name;
        fileInfo.size = this.size;
        fileInfo.type = this.type;
        formData.filesInfo.push(fileInfo);
      });
    
      $.post(url, formData).done(function (data) {
        alert(data);
      });
    }
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <form id="theForm">
        <input type="file" id="inputFile">
        <input type="submit" name="submit" id="submit">
    </form>

    【讨论】:

    • 我尝试使用“文件”但页面自动刷新
    • 页面什么时候自动刷新的?你按下提交按钮了吗?在上面的示例中,我使用了&lt;form id="theForm"&gt; 表单,您使用不同的 id 吗?
    • 四鸟多谢了“prop()”方法解决了问题多谢了:)
    • @MohamedSalah 不错! :) 不客气。如果这解决了您的问题,也许您可​​以考虑将答案标记为已接受。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-06
    • 1970-01-01
    • 2014-10-23
    • 1970-01-01
    • 1970-01-01
    • 2019-03-20
    • 2011-03-03
    相关资源
    最近更新 更多