我有一个正在开发的 ASP.NET/C# 应用程序。我正在使用BlueImp File Uploader尝试将文件上传到我的 ASHX 处理程序。一切正常。ASHX 处理程序所做的是将图像存储在 SQL Server 数据库中。
我的问题是,当我的处理程序被执行时,它需要传递一个 ID,因此它知道将图像存储在哪个记录中。现在,我的表单都是客户端/ajax,所以没有回发。如果可能的话,我想保持这种状态。
这是我用来调用处理程序的代码:
$('#fileupload').fileupload({
url: 'W9UploadHandler.ashx',
dataType: 'json',
done: function (e, data) {
$.each(data.result.files, function (index, file) {
$('<p/>').text(file.name).appendTo('#files');
});
},
progressall: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('#progress .bar').css(
'width',
progress + '%'
);
}
});
我的 ID,现在,存储在一个隐藏的 div 中。我可以像这样访问它:
var id = $('#divHostApplicationId').text();
如何将此 ID 传递给我的 ASHX 处理程序?我知道我可以将它作为带有 'url' 参数的查询参数传递,但似乎 Blueimp 不允许您动态更改 url。一旦设置,它似乎永远设置。有任何想法吗?