我正在使用uplodifiy上传我的照片。这是我的代码在下面。但是 在Upload.ashx处理程序中,我可以获取提交的值(Id和foo值)。它们返回空值。 我怎么能解决这个问题。谢谢。 我有这样的代码
$(document).ready(function () {
var id = "55";
var theString = "asdf";
$("#<%=FileUpload1.ClientID%>").uploadify({
'uploader': 'Upload.ashx',
'swf': 'uploadify/uploadify.swf',
'script': 'Upload.ashx',
'cancelImg': 'images/cancel.png',
'folder': 'upload',
'multi': true,
'buttonText': 'RESIM SEC',
'fileExt': '*.jpg;*.png;*.gif;*.bmp;*.jpeg',
'auto': false,
'scriptData': { 'id': id, 'foo': theString}
,onAllComplete: function (event, data) {
}
});
});
和我的ashx文件一样;
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Expires = -1;
try
{
//I tryed both way to get values both both return null values.
string pwd1 = context.Request["Id"];
string pwd2 = context.Request.Form["Foo"];
HttpPostedFile postedFile = context.Request.Files["Filedata"];
string id = context.Request["id"];
string savepath = "";
string tempPath = "";
tempPath = context.Request["folder"];
//If you prefer to use web.config for folder path, uncomment below line:
//tempPath = System.Configuration.ConfigurationManager.AppSettings["FolderPath"];
savepath = context.Server.MapPath(tempPath);
string filename = postedFile.FileName;
if (!Directory.Exists(savepath))
Directory.CreateDirectory(savepath);
string ext = System.IO.Path.GetExtension(filename);
string resimGuid = Guid.NewGuid().ToString();
..........
..........
答案 0 :(得分:1)
将 formData 与发布方法
一起使用如果方法选项设置为“get”,则额外数据可以作为查询字符串传递给脚本,如果设置为“post”,则可以通过标题传递给脚本。这一切都是在formData选项的帮助下完成的。根据您设置的方法选项('post'或'get'),您可以检索服务器端formData选项中发送的信息。
更多信息请参考Passing Extra Data