我是靠谱客的博主 拼搏魔镜,最近开发中收集的这篇文章主要介绍js实现文件上传,node实现文件上传,html实现文件上传,jquery.form实现文件上传,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

前端html及JS代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="./jquery-1.12.0.min.js"></script>
<script src="./jquery.form.min.js"></script>
</head>
<body>
<form id="upload" enctype="multipart/form-data" method="post" action="/fileupload">
<input type="file" name="file" class="selectFile">
<button id="submitBtn" οnclick="return uploadFile()">确定</button>
</form>
<script>
$("#submitBtn").ajaxSubmit(function(response){
var responseObj = JSON.parse(response);
console.log(responseObj);
});
return false;
</script>
</body>
</html>

注意:

引入jquery.form.min.js文件,调用ajaxSubmit实现文件上传

form属性enctype="multipart/form-data"不可缺少;

script的return false是阻止表单二次提交和跳转

后端node代码如下


upload.js文件代码如下:

var router = require('express').Router();
var multer = require('multer');
var uxconsole = require('./common/log.js');
var gFilename = "";
var fileDir = '';
var storage = multer.diskStorage({
destination: function (req, file, callback) {
callback(null, fileDir);
},
filename: function (req, file, callback) {
gFilename = file.originalname;
callback(null, gFilename);
}
});
var upload = multer({storage: storage}).any();
router.post('/', function (req, res, next) {
res.setTimeout(25000, function () {
if (res.finished) {
return;
}
dealWithResult(true, 501, "system timeout");
});
var url = req.url;
if (url.indexOf('dir=') != -1) {
fileDir = url.split('dir=')[1];
} else {
fileDir = process.rootdir;
}
upload(req, res, function (isErr) {
if (res.finished) {
return;
}
if (isErr) {
dealWithResult(true, 200, '上传失败');
} else {
dealWithResult(false, 200, '上传成功');
}
});
function dealWithResult(isErr, headNum, rst) {
var rtRes = {
rstcode: "error",
desc: "上传失败",
data: {}
};
if (isErr) {
rtRes.desc = rst;
} else {
rtRes.rstcode = "success";
rtRes.desc = "上传成功";
rtRes.data.filename = gFilename;
}
// https
// res.writeHead(headNum, {
//
'Access-Control-Allow-Methods': 'OPTIONS, HEAD, POST',
//
'Access-Control-Allow-Origin': '*'
// });
res.write(JSON.stringify(rtRes));
res.end();
}
});
module.exports = router;

最后

以上就是拼搏魔镜为你收集整理的js实现文件上传,node实现文件上传,html实现文件上传,jquery.form实现文件上传的全部内容,希望文章能够帮你解决js实现文件上传,node实现文件上传,html实现文件上传,jquery.form实现文件上传所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部