2016-09-16 12 views
1

複数のファイルをアップロードするアップロードボタンが1つあり、ファイルを選択するたびにjquery onchangeが呼び出され、隠し入力に1つの値しか設定できません。私の質問は、隠し入力値にすべてのファイル名を保存できる方法ですすべてのファイル名をデータベースに保存します。php配列にjqueryの値を挿入するには?

<input type="hidden" name="croppedDocumentActivity[]" id="croppedDocumentActivity" value="" visibility="hidden"> 



    $('#activityAddOrEditFile').on('change', function(){ 
    var file = $("#activityAddOrEditFile")[0].files[0]; 
       var fileTypes = ['jpg', 'jpeg', 'png', 'bmp', 'gif','pdf','docx']; 

         var a = new Array(); 
         a.push(file.name); 

         $('#croppedDocumentActivity').val(a); 


      }) 
+0

ファイルをアップロードするときにファイル名が表示されます。なぜあなたはその前にそれらを必要としますか? – nogad

+0

アイデア: ''

' - うわー!すごい!一度に複数のファイルを! – icecub

+0

@ nogad.iボタンを使用していない入力ファイル – vision

答えて

0

スクリプトでは、フォーム内に新しい隠し要素を追加する関数を呼び出すことができます。したがって、フォームを送信すると、新しく追加されたすべての要素が同時に渡されます。このようなことを試してみてください。

$('#activityAddOrEditFile').on('change', function(){ 
    var file = $("#activityAddOrEditFile")[0].files[0]; 
    appendSomething(file.name); //appends new hidden element 
}) 


public function appendSomething(filename) { 
    $('#yourform').append('<input type="hidden" name="croppedDocumentActivity[]" value='+filename+'>'); 
} 
+0

@E Aia.ifメソッドを使用すると、PHP側で空の配列が取得されます。 – vision

関連する問題