Javascript Jquery中最近的文件上传

Javascript Jquery中最近的文件上传,javascript,jquery,html,Javascript,Jquery,Html,HTML <table> <tr> <td> <input type="file" /> </td> <td> <input type="button" id="btn" /> </td> </tr> <tr> <td> <input type="file" /&

HTML

<table>
    <tr>
        <td> <input type="file"  /> </td>
         <td> <input type="button" id="btn"  /> </td>      
   </tr>        
    <tr>
    <td> <input type="file"  /> </td>
          <td> <input type="button" id="btn"  /> </td>      
   </tr>

    <tr>
        <td> <input type="file" /> </td>
          <td> <input type="button" id="btn"  /> </td>    
   </tr>

</table>
请帮助我解决此问题。

请尝试此代码

var fData = new FormData();
var tr = $('table').closest('tr');
var fup = $('tr').find("input[type='file']");
var totalFiles = fup.length;//Here, getting total file count
  for (var i = 0; i < totalFiles; i++) {
       var file = fup[i].files[0];//Exception will not occur here
       console.log(file)
       fData.append("fupUpdate", file);
   }
var fData=new FormData();
var tr=$('table')。最近的('tr');
var fup=$('tr').find(“输入[type='file']”);
var totalFiles=fup.length//这里,获取文件总数
对于(var i=0;i

不要创建与FormData同名的局部变量,只要替换即可

var file = fup.file[i];//I am getting exception here


这很好。

我认为问题在于您选择的输入。您可以使用以下选项:

$(":file")

工作示例

var file = fup.file[i];//I am getting exception here
var file = fup[i].files[0];// no Exception here.
$(":file")
$("table tr :input[type='file']").each(function (i,v) {
      var file=$(v);
      //Your code goes here
});