4

这看起来很愚蠢,但我似乎无法理解文档。我说的是这个文件上传插件。

现在根据文档有一个选项:

表单数据

可以使用此选项设置与文件上传一起发送的其他表单数据,该选项接受具有名称和值属性的对象数组、返回此类数组的函数、FormData 对象(用于 XHR 文件上传)或简单的目的。第一个 fileInput 的形式作为函数的参数给出。

注意:当 multipart 选项设置为 false 时,将忽略其他表单数据。

类型:数组、对象、函数或 FormData 默认值:将表单字段作为序列化数组返回的函数:

function (form) {
    return form.serializeArray();
}

例子:

[{名称:'a',值:1},{名称:'b',值:2}]

我不明白我应该做什么。

这就是我初始化插件的方式:

$('#add_image_upload').fileupload({
            dataType: 'json',
    sequentialUploads: true,
    formData : getDate
});

这是我对该功能的尝试:

 function getDate(){

//if user didn't selected a date
if(!selectedDate || selectedDate=="undefined"){
selectedDate = "1/1/"+$('#timeline').html();
}
var date= new Array(selectedDate);
return date;
}
4

2 回答 2

7

尝试将您的数据转换为对象 - 使用他们在示例中显示的内容

$('#add_image_upload').fileupload({
            dataType: 'json',
    sequentialUploads: true,
    formData : {name:'thedate',value:getDate}
});

然后添加更多参数

           //name of param  // value
formData : [{name:'thedate',value:getDate},{name:'thedate2',value:'seconddate'},etc..]

例子:

[{名称:'a',值:1},{名称:'b',值:2}]

thedate用任何你想命名的参数来改变

虽然听起来像一个简单的对象应该可以正常工作

           //name:value
formData : {thedate:getDate}
于 2012-10-23T16:02:16.357 回答
0

你在表格上multipart设置了吗?false此外,请确保您发回的格式是可接受的。

尝试硬编码以下行并发送回信息:

new dateobject = { "date": "1/1/2012" }
于 2012-10-23T15:59:13.647 回答