2

input type='file' 複数の要素を使用していますが、サーバー側の制限により、一度に 1 つのドキュメントしかアップロードできません。したがって、単一のファイル入力要素のみを保持しながら、これを行う方法を見つけるのに苦労しています...私の唯一のオプションは、独自の隠しファイル入力要素を使用して複数のフォームを作成し、ファイルをループして何らかの方法で設定することだと思います非表示の入力フィールドの値ですが、方法がわかりません。推奨事項はありますか?これが私がこれまでに持っているものです:

HTML:
<form method='POST' id='frmUploadDoc' enctype='multipart/form-data' target='hiddenIframe' action='/wle/rest'>
    <input type="file" name="data" multiple="multiple" id="filesInput">
    <input type="submit" value="Submit"/>
</form>
<iframe name="hiddenIframe" id="hiddenIframe" style="display: none;">

JAVASCRIPT:
function handleFileSelect(evt) {      
    var files = evt.target.files; // FileList is a FileList of File objects.  
    var output = [];
    var actionText;
    for (var iCount = 0, f; f = files[iCount]; iCount++) {
       actionText="/wle/rest?action=addDocument&name=" + iCount   //This creates the unique action URL for each individual form  
       $("#frmUploadDoc").attr("action", actionText);
       output.push("<li><strong>", f.name, "</strong></li>");
       postDocumentToWLE(iCount);            
    }
    document.getElementById('listDocs').innerHTML = '<ul>' + output.join('') + '</ul>';
  }
4

2 に答える 2

0

多くの調査の結果、iframe を介した POST によるフォームのアップロードでは、複数のファイルをアップロードできないという David の意見は正しいようです。HTML5 では複数ファイルのアップロードが可能ですが、各ファイルを個別に送信する必要がある場合、複数ファイル入力を使用することはできません。

于 2013-01-09T17:17:00.710 に答える