我有一个上传按钮上传多个文件,每次我选择文件然后调用jquery onchange并且我只能设置一个值到隐藏输入。我的问题是如何将所有文件名存储在隐藏的输入值中所以我可以将所有文件名存储在数据库中。
<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 :(得分: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+'>');
}