我正在使用Valum文件上传器库。它适用于我,但我需要提供其他参数的文件名。现在我正在做以下事情:
var uploader = new qq.FileUploader({
element: button,
allowedExtensions: ['jpg', 'jpeg', 'png'],
sizeLimit: 2147483647, // max size
action: '/ControllerNAme/Action',
multiple: false,
params: {PostData: GetFileUploadData()},
onComplete: function(id, fileName, responseJSON){
//My reload logic here.
},
});
function GetFileUploadData() {
var lFileUploadData = new Object();
//File note is the id of input with type text, in which I type some notes to file
lFileUploadData.FileNote = $('#FileNote').val();
return JSON.stringify(lFileUploadData);
};
但是我一直把这个字段弄空了。
答案 0 :(得分:1)
您应该使用onchange
事件来获取文件名,也许,GetFileUploadData()
函数在文件输入尚未被浏览器提交时获取文件名。
我猜以下语句在开头初始化(表示:onload)
var uploader = new qq.FileUploader({
element: button,
allowedExtensions: ['jpg', 'jpeg', 'png'],
sizeLimit: 2147483647, // max size
action: '/ControllerNAme/Action',
multiple: false,
params: {PostData: GetFileUploadData()},
onComplete: function(id, fileName, responseJSON){
//My reload logic here.
},
});
然后:
致电$('#FileNote').val()
GetFifleUploadData()
为空
那么,你可以尝试一下这个:
$("#FileNote").change(function(){
uploader._options.params.PostData = $(this).val();
});
答案 1 :(得分:0)
上传的文件由fileName
函数的onComplete
参数指定,在上传完成时调用。
然后,您可以将此值传递给服务器(如果需要)
params:
部分用于作为POST参数发送的参数,发送到上传处理程序URL(在action:
部分中指定)