html
<input id="uploaderInput" class="" accept="image/*" multiple="" type="file">
var userImg = document.getElementById("uploaderInput").files
var fd = new FormData();
//判断是否选中了照片
if (userImg.length > 0) {
fd.append("userImg", userImg[0])//0(在选中多张时获取最新的那张)
}
$.ajax({
url: "XGgerenziliao",//控制器路径
type: "post",
async: true,
data: fd,//传参
processData: false, // 不处理发送的数据,因为data值是Formdata对象,不需要对数据做处理
contentType: false, // 不设置Content-type请求头
success: function (retdata) {
//返回回调 retdata 是控制器的返回数据
}
})
控制器
//声明一个byte[](字节型数组)来保存新增的图片
byte[] imgFile = null;
//判断图片文件是否为空
if (userImg != null && userImg.ContentLength > 0)
{
//初始化数组的长度,为节省空间,长度由实际上传的图片的长度决定
imgFile = new byte[userImg.ContentLength];
//读取该图片文件
//将图片转为流结束位置
//将流读取为byte[],参数:byte[],读取开始位置,读取字节数
userImg.InputStream.Read(imgFile, 0, userImg.ContentLength);
//imgFile 就是我们最终存入数据库中的数据
}
数据库 保存为二进制数据