ajaxFileUpload比“文件”有更多的参数

时间:2011-01-25 18:44:00

标签: jquery

我可以使用更多的参数发送到网址:使用ajaxFileUpload吗?

我使用$ .ajaxFileUpload(),当我ajax文件上载时,我想传递一个额外的参数。我只传递一个名为“文件”的参数,其中包含您要上传的文件。 设置如下所示:

url:'photo.php?mode=upload',
secureuri:false,
type: 'post',
fileElementId:'file',
dataType: 'json',
success: function (data, status)

尝试添加数据:{param:'1'}但它没有传递任何东西..

4 个答案:

答案 0 :(得分:5)

数据:{'id':id}

例如:

$.ajaxFileUpload
     (
         {
             url: 'SampleReportEditHandler.html',
             secureuri: false,
             fileElementId: 'UploadFile',
             data: { 'id': '100' }
             beforeSend: function () {},
             success: function (data, status) {},
             error: function (data, status, e) {}
         }
     )

答案 1 :(得分:1)

您无法通过向网址添加其他GET参数来实现目标吗?

url:'photo.php?mode=upload&file=someFileName'

我对这个jquery插件并不完全熟悉。你确定它支持param吗?

答案 2 :(得分:1)

您可以传递数据参数。 数据应该是一个javascript对象,例如:

data ={name:'my name', description:'short description'}

然后将此数据与ajaxFileUpload

一起使用
$.ajaxFileUpload
(
  {
    url:url, 
    data: data,
    dataType: 'json',
    secureuri:false,
    fileElementId:'fileElementId'
  }
)

如果要获取表单元素,可以按以下方式获取数据:

var data = {};
$("#" + formId + " :input").each(function(){data[this.name]=this.value});

答案 3 :(得分:0)

我使用jQuery ajax form plugin,但ajaxFileUpload看起来像是以相同的方式工作。您可以将数据类型设置为“json”或“xml”,它应该将表单中的所有字段发送到URL。