<fieldset> <legend>示例A - 普通表单上传文件,Request.Files获取上传文件</legend> <form action="/Error/A" method="post" enctype="multipart/form-data"> <input type="file" name="fileA" multiple /> <button type="submit">提交</button> </form> </fieldset>
[HttpPost]
public ActionResult A()
{
var sbLog = new StringBuilder(string.Empty);
var fileCount = Request.Files.Count;
//访问上传文件地址
var path = @"http://localhost:1010/{0}";
//保存文件地址
var uploadPath = @"D:\D\TTest";
sbLog.AppendFormat("上传文件目录:{0}<br/>", uploadPath);
sbLog.AppendFormat("上传文件量:{0}<br/>", fileCount);
for (int i = 0; i < fileCount; i++)
{
var file = Request.Files[i];
if (file == null || string.IsNullOrEmpty(file.FileName)) { continue; }
var fileName = file.FileName;
var fileNewName = DateTime.Now.Ticks + fileName;
sbLog.AppendFormat("第:{0}个文件名称:{1}新名称:{2}下载地址:<a href='{3}' target='_blank'>{2}</a><br/>", i + 1, fileName, fileNewName, string.Format(path, fileNewName));
file.SaveAs(Path.Combine(uploadPath, fileNewName));
}
return Content(sbLog.ToString());
}
<fieldset>
<legend>示例B - 普通表单上传文件,HttpPostedFileBase获取上传文件</legend>
@using (Html.BeginForm("B", "Error", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<input type="file" name="files" multiple />
<button>提交</button>
}
</fieldset>
[HttpPost]
public ActionResult B(IEnumerable<HttpPostedFileBase> files)
{
var sbLog = new StringBuilder(string.Empty);
var fileCount = files == null ? 0 : files.Count();
//访问上传文件地址
var path = @"http://localhost:1010/{0}";
//保存文件地址
var uploadPath = @"D:\D\TTest";
sbLog.AppendFormat("上传文件目录:{0}<br/>", uploadPath);
sbLog.AppendFormat("上传文件量:{0}<br/>", fileCount);
var i = 0;
foreach (var file in files)
{
if (file == null || string.IsNullOrEmpty(file.FileName)) { continue; }
var fileName = file.FileName;
var fileNewName = DateTime.Now.Ticks + fileName;
sbLog.AppendFormat("第:{0}个文件名称:{1}新名称:{2}下载地址:<a href='{3}' target='_blank'>{2}</a><br/>", i + 1, fileName, fileNewName, string.Format(path, fileNewName));
file.SaveAs(Path.Combine(uploadPath, fileNewName));
}
return Content(sbLog.ToString());
}
<fieldset>
<legend>示例C - ajax+FormData上传文件,Request.Files获取上传文件</legend>
@using (Html.BeginForm("C", "Error", FormMethod.Post, new { enctype = "multipart/form-data", @id = "form_c" }))
{
<span>账号:</span><input type="text" name="userName" value="神牛步行3" /><br />
<span>密码:</span><input type="password" name="userPwd" value="神牛" /><br />
<span>文件:</span><input type="file" name="filesc" multiple /><br />
<button type="button">提交</button><br />
<span id="msg_c"></span>
}
</fieldset>
<script>
$(function () {
//示例C代码
$("#form_c button[type='button']").click(function () {
var msg = $("#msg_c");
var btnSave = $(this);
var formData = new FormData(document.getElementById("form_c"));
console.log(formData);
$.ajax({
url: '/Error/C',
type: 'post',
beforeSend: function (e) {
btnSave.attr("disabled", "disabled");
msg.html("上传中...");
},
success: function (data) {
console.log(data);
var alertMsg = "上传失败";
if (data) {
alertMsg = data.Status == 1 ? data.Data : alertMsg;
}
msg.html(alertMsg);
btnSave.removeAttr("disabled");
},
error: function (data) {
msg.html("上传失败");
btnSave.removeAttr("disabled");
},
data: formData,
cache: false,
contentType: false,
processData: false
});
});
})
</script>
[HttpPost]
public JsonResult C()
{
Thread.Sleep(1000 * 5);
var response = new MoResponse();
var sbLog = new StringBuilder("开始处理...");
try
{
sbLog.AppendFormat("账号:{0}<br/>", Request.Params["userName"]);
sbLog.AppendFormat("密码:{0}<br/>", Request.Params["userPwd"]);
var fileCount = Request.Files.Count;
//访问上传文件地址
var path = @"http://localhost:1010/{0}";
//保存文件地址
var uploadPath = @"D:\D\TTest";
sbLog.AppendFormat("上传文件目录:{0}<br/>", uploadPath);
sbLog.AppendFormat("上传文件量:{0}<br/>", fileCount);
for (int i = 0; i < fileCount; i++)
{
var file = Request.Files[i];
if (file == null || string.IsNullOrEmpty(file.FileName)) { continue; }
var fileName = file.FileName;
var fileNewName = DateTime.Now.Ticks + fileName;
sbLog.AppendFormat("第:{0}个文件名称:{1}新名称:{2}下载地址:<a href='{3}' target='_blank'>{2}</a><br/>", i + 1, fileName, fileNewName, string.Format(path, fileNewName));
file.SaveAs(Path.Combine(uploadPath, fileNewName));
response.Status = 1;
}
}
catch (Exception ex)
{
sbLog.AppendFormat("异常信息:{0}", ex.Message);
}
finally
{
response.Data = sbLog.ToString();
}
return Json(response);
}
<script>
$(function () {
//示例D代码
//初始化插件
var shenniu = new shenniu_UpFile({
url: "/Error/D_A",
fileEleName: "filesd"
});
//提交事件
$("#form_d button[type='button']").click(function () {
var msg = $("#msg_d");
var btnSave = $(this);
btnSave.attr("disabled", "disabled");
msg.html("上传中..");
//上传文件
shenniu.submitFun(function (data) {
try {
var result = JSON.parse(data);
//上传成功,保存数据
if (result.Status == 1) {
//增加上传成功的文件名称到表单
var hidFileNames = $("#form_d input[name='hidFileNames']");
if (hidFileNames.length <= 0) { $("#form_d").append("<input type='hidden' name='hidFileNames' value='" + result.Data + "'/>");
else {
hidFileNames.val(result.Data);
}
//获取表单键值对,提交表单数据
var param = $("#form_d").serialize();
var action = $("#form_d").attr("action");
$.post(action, param, function (res) {
msg.html(res.Status == 1 ? "保存成功<br/>" + res.Data : "保存失败");
});
} else {
msg.html(result.Data);
}
} catch (e) {
console.log(e.message);
} finally {
btnSave.removeAttr("disabled");
}
});
});
})
</script>
var defOption = { url: "http://www.cnblogs.com/wangrudong003/", //上传路由地址,注:1.目前通过该地址上传文件成功后,返回的信息是text/plain 2.跨域暂未考虑
fileEleName: "fileName", //上传input file控件的唯一名称
uid: new Date().getTime(), //防重复
backFun: function () { } //回调函数
};
//清空自定义form多余的file元素
form.html("");
var files = $("input[name='" + defOption.fileEleName + "']");
//复制上传控件对象
var filesClone = files.clone(true);
filesClone.insertAfter(files);
form.append(files);
/// <summary>
/// 保存form提交的表单数据
/// </summary>
/// <returns></returns>
[HttpPost]
public JsonResult D()
{
var response = new MoResponse();
var sbLog = new StringBuilder(string.Empty);
try
{
//访问上传文件地址
var path = @"http://localhost:1010/{0}";
sbLog.AppendFormat("账号:{0}<br/>", Request.Params["userName"]);
sbLog.AppendFormat("密码:{0}<br/>", Request.Params["userPwd"]);
foreach (var item in Request.Params["hidFileNames"].Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries))
{
sbLog.AppendFormat("文件新名称:{0};下载地址:<a href='{1}' target='_blank'>{0}</a><br/>", item, string.Format(path, item));
}
response.Status = 1;
}
catch (Exception ex)
{
sbLog.AppendFormat("异常信息:{0}", ex.Message);
}
finally
{
response.Data = sbLog.ToString();
}
return Json(response);
}
/// <summary>
/// 获取上传文件信息
/// </summary>
/// <returns></returns>
[HttpPost]
public ContentResult D_A()
{
var response = new MoResponse();
response.Data = "上传失败";
try
{
Thread.Sleep(1000 * 3);
var fileCount = Request.Files.Count;
//保存文件地址
var uploadPath = @"D:\D\TTest";
var fileNames = string.Empty;
for (int i = 0; i < fileCount; i++)
{
var file = Request.Files[i];
if (file == null || string.IsNullOrEmpty(file.FileName)) { continue; }
var fileName = file.FileName;
var fileNewName = DateTime.Now.Ticks + fileName;
file.SaveAs(Path.Combine(uploadPath, fileNewName));
fileNames += fileNewName + "|";
}
if (!string.IsNullOrEmpty(fileNames))
{
response.Status = 1;
response.Data = fileNames.TrimEnd('|');
}
}
catch (Exception ex)
{
response.Data = ex.Message;
}
return Content(JsonConvert.SerializeObject(response));
}
public class ErrorController : Controller
{
//
// GET: /Error/
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult A()
{
var sbLog = new StringBuilder(string.Empty);
var fileCount = Request.Files.Count;
//访问上传文件地址
var path = @"http://localhost:1010/{0}";
//保存文件地址
var uploadPath = @"D:\D\TTest";
sbLog.AppendFormat("上传文件目录:{0}<br/>", uploadPath);
sbLog.AppendFormat("上传文件量:{0}<br/>", fileCount);
for (int i = 0; i < fileCount; i++)
{
var file = Request.Files[i];
if (file == null || string.IsNullOrEmpty(file.FileName)) { continue; }
var fileName = file.FileName;
var fileNewName = DateTime.Now.Ticks + fileName;
sbLog.AppendFormat("第:{0}个文件名称:{1}新名称:{2}下载地址:<a href='{3}' target='_blank'>{2}</a><br/>", i + 1, fileName, fileNewName, string.Format(path, fileNewName));
file.SaveAs(Path.Combine(uploadPath, fileNewName));
}
return Content(sbLog.ToString());
}
[HttpPost]
public ActionResult B(IEnumerable<HttpPostedFileBase> files)
{
var sbLog = new StringBuilder(string.Empty);
var fileCount = files == null ? 0 : files.Count();
//访问上传文件地址
var path = @"http://localhost:1010/{0}";
//保存文件地址
var uploadPath = @"D:\D\TTest";
sbLog.AppendFormat("上传文件目录:{0}<br/>", uploadPath);
sbLog.AppendFormat("上传文件量:{0}<br/>", fileCount);
var i = 0;
foreach (var file in files)
{
if (file == null || string.IsNullOrEmpty(file.FileName)) { continue; }
var fileName = file.FileName;
var fileNewName = DateTime.Now.Ticks + fileName;
sbLog.AppendFormat("第:{0}个文件名称:{1}新名称:{2}下载地址:<a href='{3}' target='_blank'>{2}</a><br/>", i + 1, fileName, fileNewName, string.Format(path, fileNewName));
file.SaveAs(Path.Combine(uploadPath, fileNewName));
}
return Content(sbLog.ToString());
}
[HttpPost]
public JsonResult C()
{
Thread.Sleep(1000 * 5);
var response = new MoResponse();
var sbLog = new StringBuilder("开始处理...");
try
{
sbLog.AppendFormat("账号:{0}<br/>", Request.Params["userName"]);
sbLog.AppendFormat("密码:{0}<br/>", Request.Params["userPwd"]);
var fileCount = Request.Files.Count;
//访问上传文件地址
var path = @"http://localhost:1010/{0}";
//保存文件地址
var uploadPath = @"D:\D\TTest";
sbLog.AppendFormat("上传文件目录:{0}<br/>", uploadPath);
sbLog.AppendFormat("上传文件量:{0}<br/>", fileCount);
for (int i = 0; i < fileCount; i++)
{
var file = Request.Files[i];
if (file == null || string.IsNullOrEmpty(file.FileName)) { continue; }
var fileName = file.FileName;
var fileNewName = DateTime.Now.Ticks + fileName;
sbLog.AppendFormat("第:{0}个文件名称:{1}新名称:{2}下载地址:<a href='{3}' target='_blank'>{2}</a><br/>", i + 1, fileName, fileNewName, string.Format(path, fileNewName));
file.SaveAs(Path.Combine(uploadPath, fileNewName));
response.Status = 1;
}
}
catch (Exception ex)
{
sbLog.AppendFormat("异常信息:{0}", ex.Message);
}
finally
{
response.Data = sbLog.ToString();
}
return Json(response);
}
/// <summary>
/// 保存form提交的表单数据
/// </summary>
/// <returns></returns>
[HttpPost]
public JsonResult D()
{
var response = new MoResponse();
var sbLog = new StringBuilder(string.Empty);
try
{
//访问上传文件地址
var path = @"http://localhost:1010/{0}";
sbLog.AppendFormat("账号:{0}<br/>", Request.Params["userName"]);
sbLog.AppendFormat("密码:{0}<br/>", Request.Params["userPwd"]);
foreach (var item in Request.Params["hidFileNames"].Split(new char[] { '|' }, StringSplitOptions.RemoveEmptyEntries))
{
sbLog.AppendFormat("文件新名称:{0};下载地址:<a href='{1}' target='_blank'>{0}</a><br/>", item, string.Format(path, item));
}
response.Status = 1;
}
catch (Exception ex)
{
sbLog.AppendFormat("异常信息:{0}", ex.Message);
}
finally
{
response.Data = sbLog.ToString();
}
return Json(response);
}
/// <summary>
/// 获取上传文件信息
/// </summary>
/// <returns></returns>
[HttpPost]
public ContentResult D_A()
{
var response = new MoResponse();
response.Data = "上传失败";
try
{
Thread.Sleep(1000 * 3);
var fileCount = Request.Files.Count;
//保存文件地址
var uploadPath = @"D:\D\TTest";
var fileNames = string.Empty;
for (int i = 0; i < fileCount; i++)
{
var file = Request.Files[i];
if (file == null || string.IsNullOrEmpty(file.FileName)) { continue; }
var fileName = file.FileName;
var fileNewName = DateTime.Now.Ticks + fileName;
file.SaveAs(Path.Combine(uploadPath, fileNewName));
fileNames += fileNewName + "|";
}
if (!string.IsNullOrEmpty(fileNames))
{
response.Status = 1;
response.Data = fileNames.TrimEnd('|');
}
}
catch (Exception ex)
{
response.Data = ex.Message;
}
return Content(JsonConvert.SerializeObject(response));
}
}
public class MoResponse
{
public object Data { get; set; }
/// <summary>
/// 0:失败 1:成功
/// </summary>
public int Status { get; set; }
}
@{
ViewBag.Title = "上传 - 示例";
}
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta />
</head>
<body>
<div class=" error-container">
<fieldset>
<legend>示例A - 普通表单上传文件,Request.Files获取上传文件</legend>
<form action="/Error/A" method="post" enctype="multipart/form-data">
<input type="file" name="fileA" multiple />
<button type="submit">提交</button>
</form>
</fieldset>
<fieldset>
<legend>示例B - 普通表单上传文件,HttpPostedFileBase获取上传文件</legend>
@using (Html.BeginForm("B", "Error", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<input type="file" name="files" multiple />
<button>提交</button>
}
</fieldset>
<fieldset>
<legend>示例C - ajax+FormData上传文件,Request.Files获取上传文件</legend>
@using (Html.BeginForm("C", "Error", FormMethod.Post, new { enctype = "multipart/form-data", @id = "form_c" }))
{
<span>账号:</span><input type="text" name="userName" value="神牛步行3" /><br />
<span>密码:</span><input type="password" name="userPwd" value="神牛" /><br />
<span>文件:</span><input type="file" name="filesc" multiple /><br />
<button type="button">提交</button><br />
<span id="msg_c"></span>
}
</fieldset>
<fieldset>
<legend>示例D - 自定义上传插件,Request.Files获取上传文件并提交表单内容</legend>
@using (Html.BeginForm("D", "Error", FormMethod.Post, new { enctype = "multipart/form-data", @id = "form_d" }))
{
<span>账号:</span><input type="text" name="userName" value="神牛步行3" /><br />
<span>密码:</span><input type="password" name="userPwd" value="神牛" /><br />
<span>文件:</span><input type="file" name="filesd" multiple /><br />
<button type="button">提交</button><br />
<span id="msg_d" style="color:red"></span>
}
</fieldset>
</div>
</body>
</html>
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script src="http://7xn3fx.com1.z0.glb.clouddn.com/js/PlugTool/shenniu.upfile-0.0.1.js"></script>
<script>
$(function () {
//示例D代码
//初始化插件
var shenniu = new shenniu_UpFile({
url: "/Error/D_A",
fileEleName: "filesd"
});
//提交事件
$("#form_d button[type='button']").click(function () {
var msg = $("#msg_d");
var btnSave = $(this);
btnSave.attr("disabled", "disabled");
msg.html("上传中..");
//上传文件
shenniu.submitFun(function (data) {
try {
var result = JSON.parse(data);
//上传成功,保存数据
if (result.Status == 1) {
//增加上传成功的文件名称到表单
var hidFileNames = $("#form_d input[name='hidFileNames']");
if (hidFileNames.length <= 0) { $("#form_d").append("<input type='hidden' name='hidFileNames' value='" + result.Data + "'/>"); }
else {
hidFileNames.val(result.Data);
}
//获取表单键值对,提交表单数据
var param = $("#form_d").serialize();
var action = $("#form_d").attr("action");
$.post(action, param, function (res) {
msg.html(res.Status == 1 ? "保存成功<br/>" + res.Data : "保存失败");
});
} else {
msg.html(result.Data);
}
} catch (e) {
console.log(e.message);
} finally {
btnSave.removeAttr("disabled");
}
});
});
})
</script>
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有