基于jQuery通过jQuery.form.js插件实现异步上传 - Web前端
作者:98wpeu发布时间:2026-08-11分类:网页前端技术浏览:15
导读:本文主要从前台和后台代码分析了JQuery.FORM.JS实现异步上传的方法,分享给大家,具体代码如下前台代码:@{Layout=null;}<!DOCt...
本文主要从前台和后台代码分析了JQuery.FORM.JS实现异步上传的方法,分享给大家,具体代码如下
前台代码:
@{
Layout = null;
}
<!DOCtype html>
<HTML>
<head>
<meta name="viewport" content="width=device-width" />
<script src="~/Scripts/jQuery-1.7.2.min.js"></script>
<script src="~/Scripts/jquery.form.js"></script>
<title>upload</title>
</head>
<body>
<Form id="fileForm" method="post" enctype="multipart/form-data" action="/upload/upload">
文件名称:<input name="fileName" type="text"><br />
上传文件:<input name="myfile" type="file" multiple="multiple"><br />
<input id="submitBTn" type="submit" value="提交">
<img src="#" alt="my img" id="iceImg" width="300" height="300" style="display: block;" />
</form>
<input type="text" name="height" value="170" />
<input id="sbtn2" type="button" value="提交表单2">
<input type="text" name="UserName" value="" />
<script type="text/javascript">
$(function () {
$("#fileForm").AjaxForm({
//定义返回json数据,还包括xml和script格式
//clearForm Boolean值属性,表示是否在表单提交成功后情况表单数据
//dataType 提交成果后返回的数据格式,可选值包括xml,JSON或者script
//target 服务器返回信息去更新的页面对象,可以是jquery选择器字符串或者JQuer对象或者DOM对象。
//type 提交类型可以是”GET“或者”POST“
//url 表单提交的路径
dataType: 'json',
beforeSend: function () {
//表单提交前做表单验证
$("#myh1").show();
},
success: function (data) {
//提交成功后调用
//alert(data.message);
$("#iceImg").attr('src', '/upload/img/' + data.fileName);
$("#myh1").hide();
//防止重复提交的方法
//1.0 清空表单数据
$('#fileForm').clearForm();
//2.0 禁用提交按钮
//3.0 跳转页面
}
});
$("#myfile").change(function () {
$("#submitBtn").click();
});
$("#iceImg").click(function () {
$("#myfile").click();
});
});
</script>
<h1 id="myh1" style="display: none;">加载中...</h1>
</body>
</html>
后台代码:
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.WEB;
using System.Web.MVC;
namespace IceMvc.controllers
{
public class UploadController : Controller
{
//
// GET: /Upload/
public ActionResult Index()
{
return VIEw();
}
[httpPost]
public ActionResult Upload()
{
var fileslist = Request.Files;
for (int i = 0; i < filesList.Count; i++)
{
var file = filesList[i];
if (file.Contentlength > 0)
{
if (file.ContentLength > 5242880)
{
return Content("<script>alert('注册失败!因为您选择图片文件不能大于5M.');window.location='/User/Register';</script>");
}
//得到原图的后缀
string extName = System.IO.Path.GetExtension(file.FileName);
//生成新的名称
String newName = GUId.NewGuid() + extName;
string imgPath = Server.MAPPath("/upload/img/") + newName;
if (file.ContentType.ContAIns("image/"))
{
using (Image img = Image.FromStream(file.InputStream))
{
img.Save(imgPath);
}
var obj = new { fileName = newName };
return Json(obj);
}
else
{
//return Content("<script>alert('注册失败!因为您未选择图片文件.');window.location='/User/Register';</script>");
}
}
}
return Content("");
}
public ActionResult Afupload()
{
return View();
}
}
}
以上就是针对jquery.form.js实现异步上传的方法,希望对大家的学习有所帮助。
相关推荐
- 通过Ajax使用FormData对象无刷新上传文件方法 - Web前端
- PHP+jquery+ajax实现分页 - Web前端
- EasyUI 中combotree 默认不能选择父节点的实现方法 - Web前端
- jQuery Validate验证框架详解(推荐) - Web前端
- BootStrap中按钮点击后被禁用按钮的最佳实现方法 - Web前端
- 针对后台列表table拖拽比较实用的jquery拖动排序 - Web前端
- jQuery无刷新上传之uploadify3.1简单使用 - Web前端
- Jquery组件easyUi实现表单验证示例 - Web前端
- 获取jqGrid中选择的行的数据 - Web前端
- JQuery实现列表中复选框全选反选功能封装(推荐) - Web前端
- 网页前端技术排行
-
- 1[Web前端]用javascript实现默认图片替代未显示的图片 - Web前端
- 2分析Iconfont-阿里巴巴矢量常用图标库 - Web前端
- 3jQuery实例教程:制作网页中可折叠的面板 - Web前端
- 4基于jquery的滚动条滚动固定div(附演示下载) - Web前端
- 5【第六章】Foundation之按钮和下拉功能 - Web前端
- 6jQuery编写widget的一些技巧分享 - Web前端
- 7分享精心挑选的12款优秀jQuery Ajax分页插件和教程 - Web前端
- 8jQuery实现鼠标移到元素上动态提示消息框效果 - Web前端
- 9在Mac/PC上远程调试iPhone/iPad上的网页 - Web前端
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


