显示图片的img标签
获取文件读取器
var imageReader=new FileReader();
使用正则表达式给图片过滤
regexImageFilter = /^(?:image/bmp|image/gif|image/jpg|image/jpeg|image/png)$/i;
文件读取器加载时间,在读取文件完成后触发
imageReader.οnlοad=function(evt){
$(“#userPicture”).attr(“src”,evt,target,result);
}
双击图片触发文件输入框点击事件
Function showImageSelectDialog(){
KaTeX parse error: Expected 'EOF', got '}' at position 26: …ure”).click(); }̲ 文件输入框改变事件,改变时读…(“#userPictureFile”).get(0).files[0];
判断读取的文件是否是需要的类型
If(regexImageFileter.test(file.type)){
使用文件读取器读取文件,并把文件转为URL
imageReader.readAsDataURL(file);
}
}
获取读取到的图片
var userPicture=$(“#userPictureFile”).get(0).files[0];
使用JQuery Ajax发送formData数据将获取到的图片传递到控制器
构建formData数据
var formData=new formData();
form.append(“userPicture”,userPicture);
文件上传时只能使用post提交不能使用get提交
$.ajax({
method: "post",//文件上传时只能使用post提交,不能使用get提交
url:'@Url.Content("~/OthersMaintenance/OpenOffNumber/InsertUser")',
data: form,
processData: false, // 告诉jQuery不要去处理发送的数据
contentType: false, // 告诉jQuery不要去设置Content-Type请求头
success: function (msg) {
//关闭加载层
layer.close(layerIndex);
if (msg.State) {
//成功
layer.alert(msg.Text, { icon: 1 });
$("#userPicture").attr("src", "");//清空图片的预览
$("#frmUser [type='reset']").click();//清空表单
} else {
//失败
layer.alert(msg.Text, { icon: 2 });
}
}
});
//保存用户头像
//==检查存放用户头像的目录是否存在
if (!System.IO.Directory.Exists(Server.MapPath("~/Document/userPicture/"))){
System.IO.Directory.CreateDirectory(Server.MapPath("~/Document/userPicture/"));}
//判断是否上传了图片
if(userPicture!=null && userPicture.ContentLength > 0) {
//获取文件的扩展名称
string imgExtension = System.IO.Path.GetExtension(userPicture.FileName);
//拼接要保存的文件名称
string fileName = DateTime.Now.ToString("yyyyMMddHHmmssffff") + "_" + Guid.NewGuid() + imgExtension;
//拼接文件保存的路径
string filePath = Server.MapPath("~/Document/userPicture/") + fileName;
//保存上传的文件到硬盘
userPicture.SaveAs(filePath);
//文件名称保存到user对象
user.picture = fileName; }