最近学ASP,NET MVC刚刚实现了文件上传功能,可是上传的目录不是统一的,需要根据用户创建的唯一文件名来上传到个人文件夹。应该怎么做呢
用的是uploadify
<script type="text/javascript">
$(function () {
$(".ImgInput").uploadify({
'auto': false,
'swf': '@Url.Content("~/Content/uploadify.swf")',
'uploader': '/Picture/Upload/',
'queueSizeLimit': 50,
'buttonText': '请选择上传文件',
'fileTypeExts': '*.gif; *.jpg; *.png; *.bmp; *jpeg',
});
});
后台
string filePath = Server.MapPath("~/Uploads/");
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
}
string fileName = Path.GetFileName(fileData.FileName);// 原始文件名称
string fileExtension = Path.GetExtension(fileName); // 文件扩展名
string saveName =fileExtension; // 保存文件名称
fileData.SaveAs(filePath + saveName);
关键是这个怎么传递参数
问题已解决,谢谢各位,方法如下
$(".new-album-content").click(function () { var str = '/Picture/Upload/' + $(this).attr("id"); $(function () { $("#selectimg").uploadify({ 'auto': false, 'swf': '@Url.Content("~/Content/uploadify.swf")', 'uploader': str, 'queueSizeLimit': 50, 'buttonText': '请选择上传文件', 'fileTypeExts': '*.gif; *.jpg; *.png; *.bmp; *jpeg', }); }); }); 参数放在str中拼接作为URL参数POST上去
可以在提交地址上,跟上对应的参数。
好的 我试试ing
哦,对了解决的办法我放在上面贴了,同样搜到这样问题的可以看看
@大芝麻: 好样的~
可以试试 fileData.SaveAs(Path.Combine(filePath, saveName, fileName + "." + fileExtension));
换用jQuery File Upload插件吧,uploadify跟新版的Jquery Bootstrap有兼容性问题……
uploadify 带多个参数会有问题,这是我目前比较头疼的问题