前段时间做物资管理系统,做到尾声发现了一个极好用的插件
究其根源发现了Layui。粗略浏览发现简直是为后台程序员而生。如果要快速开发快速上线小型项目。Layui可以说是首选了。
于是给Leader福利了这个玩意。
Leader 听从了我使用Layui的建议,然后让我们使用Layui。
在这之中 发现了Layui使用中的一些坑,做下Mark,以备不测。
引入JS 不多说 js部分如下
<script src="../layui/"></script>
<script src="../layui/"></script>
LayUi是个异步加载的过程,加载完成后 在中写下初始化事件
<script>
(['layer', 'form','upload'], function(){
var layer = ,
upload = ,
,form = ;
//合同文件上传
({
elem: '.UploadFile' //绑定元素
, before: function (obj) {
(2); //上传loading
}
, done: function (res, index, upload) {
//上传完毕回调
if ( != "" && != null) {
$('#FileName').val();
$("#FileUrl").val();
//获取当前触发上传的元素
var items = ;
();
}
}
});
});
</script>
html部分如下
<input type="button" hidden class="layui-btn layui-btn-sm layui-btn-normal UploadFile" lay-data="{url: '/Management/YunShu/UploadFile',accept: 'file'}" value="选择" title="重复上传会覆盖已有文件" />
c#控制器部分如下
/// <summary>
/// 文件上传
/// </summary>
/// <returns></returns>
public ActionResult UploadFile()
{
try
{
var file = [0]; //获取选中文件
var filecombin = ('.');
if (file == null || () || == 0 || < 2)
{
return Json(new
{
fileid = 0,
src = "",
name = "",
msg = "上传出错 请检查文件名 或 文件内容"
});
}
//定义本地路径位置
string local = "Upload\\Contract";
string filePathName = ;
string localPath = (, local);
var tmpName = ("~/Upload/Contract/");
var tmp = ;
var tmpIndex = 0;
//判断是否存在相同文件名的文件 相同累加1继续判断
while ((tmpName + tmp))
{
tmp = filecombin[0] + "_" + ++tmpIndex + "." + filecombin[1];
}
//不带路径的最终文件名
filePathName = tmp;
if (!(localPath))
(localPath);
string localURL = (local, filePathName);
((localPath, filePathName)); //保存图片(文件夹)
return Json(new
{
src = ().Replace("\\", "|"),
name = (), // 获取文件名不含后缀名
msg = "上传成功"
});
}
catch {}
return Json(new
{
src = "",
name = "", // 获取文件名不含后缀名
msg = "上传出错"
});
}
如有不对 恳请斧正。
/// <summary>
/// 文件上传
/// </summary>
/// <returns></returns>
public ActionResult UploadFile()
{
try
{
var file = [0]; //获取选中文件
var filecombin = ('.');
if (file == null || () || == 0 || < 2)
{
return Json(new
{
fileid = 0,
src = "",
name = "",
msg = "上传出错 请检查文件名 或 文件内容"
});
}
//定义本地路径位置
string local = "Upload\\Contract";
string filePathName = ;
string localPath = (, local);
var tmpName = ("~/Upload/Contract/");
var tmp = ;
var tmpIndex = 0;
//判断是否存在相同文件名的文件 相同累加1继续判断
while ((tmpName + tmp))
{
tmp = filecombin[0] + "_" + ++tmpIndex + "." + filecombin[1];
}
//不带路径的最终文件名
filePathName = tmp;
if (!(localPath))
(localPath);
string localURL = (local, filePathName);
((localPath, filePathName)); //保存图片(文件夹)
return Json(new
{
src = ().Replace("\\", "|"),
name = (), // 获取文件名不含后缀名
msg = "上传成功"
});
}
catch {}
return Json(new
{
src = "",
name = "", // 获取文件名不含后缀名
msg = "上传出错"
});
}