1.引入:
<link href="../../Scripts/layui-v2.3.0/css/layui.css" rel="stylesheet" media="all" />
<script src="layui.js" type="text/javascript" charset="utf-8"></script>
layui.use(['table', 'laydate', 'layer', 'formSelects'], function () {
var laydate = layui.laydate; //http://www.layui.com/demo/laydate.html
//1.时间弹框
laydate.render({
elem: '#test1'
}); //http://www.layui.com/demo/table.html
//2.table
//渲染table
var table = layui.table;
var modelObj = {};
var modelFieldsArray = $('#SearchCondition').serializeArray();
$.each(modelFieldsArray, function () {
modelObj[this.name] = this.value;
});
var modelStr = JSON.stringify(modelObj); var requestModel = {};
requestModel.method = "GetBlogList";
requestModel.modelstr = modelStr; table.render({
elem: '#test'
, url: '../../ServiceCenter/Handler/BlogHandler.ashx'
, method: 'post'
, where: requestModel
, id: 'idTest'
, page: {
layout: ['limit', 'count', 'prev', 'page', 'next', 'skip']
, limits: [10, 30, 50]
, theme: '#FF5722'
, first: '首页'
, last: '尾页'
, prev: '上一页'
, next: '下一页'
}
, cols: [[
//{ type: 'checkbox' },
{ field: 'Id', title: 'ID', sort: true }
, { field: 'UserId', title: '智驾号' }
, { field: 'LikeCount', title: '点赞数量', sort: true }
, { field: 'CommentCount', title: '评论数量', sort: true }
, { field: 'TopNo', title: '置顶号' }
, { field: 'BlogType', width: 135, title: '日志类型', sort: true }
, { field: 'CategoryName', width: 135, title: '日志类别', sort: true }
//, { field: 'text', title: '日志内容' }
, { field: 'AddTime', width: 190, title: '发布时间', sort: true }
, { toolbar: '#barDemo', width: 200, title: '操作' }
]]
, done: function (res, curr, count) {
//$("[data-field='Id']").css('display', 'none');
} }) <table class="layui-hide" id="test" lay-filter="demo"></table>
<script type="text/html" id="barDemo">
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a>
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script> //3.监听工具条
table.on('tool(demo)', function (obj) {//obj为记录对象
if (obj.event === 'detail') {
$.ajax({
type: "Get",
url: "../../ServiceCenter/Handler/BlogHandler.ashx",
dataType: "json",
data: { BlogId: obj.data.Id, method: "GetBlogById" },
success: function (rep) {
if (rep.code == 0) { //4.弹框http://layer.layui.com/
layer.open({
type: 1 //此处以iframe举例
, title: '日志详细'
, area: ['1000px', '600px']
//, area: ['1000px']
, shade: 0.3
//, shadeClose: true
, maxmin: true
, content: $('#blogdetail')
, cancel: function () {
//右上角关闭回调
}
, success: function (layero, index) {
$("#blogId").val(rep.data[0].Id);
$("#blogUserId").html(rep.data[0].UserId);
$("#blogblogStatus").html(rep.data[0].blogStatus);
$("#blogLikeCount").html(rep.data[0].LikeCount);
$("#blogCommentCount").html(rep.data[0].CommentCount);
$("#blogTopNo").html(rep.data[0].TopNo);
$("#blogBlogType").html(rep.data[0].BlogType);
$("#blogCategoryName").html(rep.data[0].CategoryName);
$("#blogAddTime").html(rep.data[0].AddTime);
var contentObj = JSON.parse(rep.data[0].Content);
$("#blogText").html(contentObj.text);
if (contentObj.medias == undefined) {
return;
}
if (contentObj.medias[0].type == 1) {
var blogimgs = {
list: contentObj.medias
};
$("#blogimgs").html(juicer($("#blogimgsTemplate").html(), blogimgs));
$("#tr_imgs").css("display", "table-row"); //http://layer.layui.com/
//5.照片展示
layer.photos({
photos: '#blogimgs'
, anim: 5 //0-6的选择,指定弹出图片动画类型,默认随机(请注意,3.0之前的版本用shift参数)
});
}
else {
if (!(contentObj.medias[0].thumbnail == undefined)) {
aliplayMng.aliPlayer._options.cover = contentObj.medias[0].thumbnail;
}
aliplayMng.aliPlayer._options.source = contentObj.medias[0].original;
//aliplayMng.createAliPlayer(contentObj.medias[0].original);
$("#tr_video").css("display", "table-row");
}
}
, btn: ['关闭'] //
, yes: function (index) {
var tmpindex = layer.index;
layer.close(index); $("#tr_imgs").css("display", "none");
$("#tr_video").css("display", "none");
}
});
}
else {
console.log(rep.code + ":" + rep.msg);
} }
}); }
}); <div class="" id="blogimgs">
<!--<img layer-src="https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=1670661812,826118626&fm=27&gp=0.jpg" src="https://gw.alicdn.com/bao/uploaded/i2/701696736/TB2PNl5ahQa61Bjy0FhXXaalFXa_!!701696736.jpg_400x400q90.jpg?t=1530671829407">-->
</div> //6.文件上传: layui.use(['jquery', 'layer', 'upload', 'formSelects'], function () {
//http://www.layui.com/demo/upload.html
var $ = layui.$;
var upload = layui.upload; var uploadInst = upload.render({
elem: '#' + uploadBtnId
, url: '../../ServiceCenter/Handler/UploadHandler.ashx'
, data: requestModel
, accept: acceptFileType || 'file'
, before: function (obj) {
//预读本地文件示例,不支持ie8
obj.preview(function (index, file, result) {
$('#' + showImgId).attr('src', result); //图片链接(base64)
if (isMusic) {
musicApp.commonKit.upLoadMng.upLoadMusicCompleted = false;
var myVid = $('#' + showImgId)[0]; //获取音频时间
if (myVid != null) {
var duration;
myVid.load();
myVid.oncanplay = function () {
console.log("myVid.duration", myVid.duration);
beforecallback(myVid.duration);
}
}
}
else {
musicApp.commonKit.upLoadMng.upLoadCompleted = false;
}
}); }
, done: function (res) {
//console.log(res.data.fileUrl);
if (isMusic)
{
musicApp.commonKit.upLoadMng.upLoadMusicCompleted = true;
}
else {
musicApp.commonKit.upLoadMng.upLoadCompleted = true;
}
aftercallback(res.data.fileUrl);
}
, error: function () {
musicApp.commonKit.upLoadMng.upLoadCompleted = false;
console.log("上传失败!");
}
}); <button type="button" class="layui-btn" id="uploadMudicCategoryImgBtn">上传图片</button>
<div class="layui-upload-list">
<img id="musicCategoryImg" class="layui-upload-img musicItemImg">
<input id="musicCategoryImgUrl" type="text" name="ImgUrl" lay-verify="title" value="https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=1670661812,826118626&fm=27&gp=0.jpg" autocomplete="off" placeholder="" class="layui-input displayNone">
</div> public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "application/json";
string method = context.Request.Params["method"];
switch (method)
{
case "UploadFile":
this.UploadFile(context);
break;
default:
break;
} context.Response.End();
} private void UploadFile(HttpContext context)
{
var httpRequest = context.Request;
var identity = GetSTSInfo();
if (identity != null)
{
var identitySTS = new
{
AccessKeyId = identity.AccessKeyId,
AccessKeySecret = identity.AccessKeySecret,
AccessSecurityToken = identity.AccessSecurityToken,
Expire = identity.Expire,
Endpoint = identity.Endpoint,
Bucket = identity.Bucket,
FileUrl = identity.FilePath
};
var client = new OssClient(identity.Endpoint, identity.AccessKeyId, identity.AccessKeySecret, identity.AccessSecurityToken);
if (httpRequest.Files.Count > 0)
{
try
{
string url = string.Empty;
var postedFile = httpRequest.Files[httpRequest.Files.AllKeys[0]]; Stream imageStream = postedFile.InputStream;//建立流对象
var type = Path.GetExtension(postedFile.FileName);//取得文件扩展名
var key = identity.FilePath + "/" + Guid.NewGuid() + type;
client.PutObject(identity.Bucket, key, imageStream);
var fileUrl = new
{
fileUrl = "http://" + identity.Bucket + "." + identity.Endpoint + "/" + key
};
var result = new { code = 0, msg = "上传文件到OSS成功:", data = fileUrl };
HttpContext.Current.Response.Write(JsonConvert.SerializeObject(result));
}
catch (Exception ex)
{
LogWriter.ToError("上传文件到OSS失败");
var result = new { code = -1, msg = "上传文件到OSS失败:" + ex.Message, data = "" };
HttpContext.Current.Response.Write(JsonConvert.SerializeObject(result));
}
}
}
else
{
LogWriter.ToError("获取STS服务失败");
var result = new { code = -1, msg = "获取STS失败", data = "" };
HttpContext.Current.Response.Write(JsonConvert.SerializeObject(result));
}
}
})

  

layui时间,table,大图查看,弹出框,获取音频长度,文件上传的更多相关文章

  1. Visual Studio 打开解决方案后 弹出框显示 "正在打开文件..." 迟迟没反应 的解决方法

    Visual Studio 打开解决方案后 弹出框显示 "正在打开文件...",任务管理器的devenv进程又很正常,不会显示"未响应". 而IDE的左下角有个 ...

  2. layui layer.open弹出框获取不了 input框的值

    layer.open({ title:'添加管理员', type: 1, content: $('.add_html').html(), btn:['添加', '取消'], btnAlign:'c', ...

  3. 利用layui前端框架实现对不同文件夹的多文件上传

    利用layui前端框架实现对不同文件夹的多文件上传 问题场景: 普通的input标签实现多文件上传时,只能对同一个文件夹下的多个文件进行上传,如果要同时上传两个或多个文件夹下的文件,是无法实现的.这篇 ...

  4. 利用BootStrap Table插件实现自己的弹出框分页。

    参考链接1:    官网:http://bootstrap-table.wenzhixin.net.cn/zh-cn/home/        开始使用:http://bootstrap-table. ...

  5. 自设table表格,获取内容,并经弹出框的url传参,获取结果显示在弹出框,并加载合计

    table表格,选择框 form id="editForm1"> <table class="table_form"> <td > ...

  6. echart 时间轴、以及y轴值过大但是变化不大显示感觉不出变化的问题+弹出框拖动div事件

    1.时间轴 echart 提供了一种图表,如果x轴是一个时间范围,并且是连续的,如果用传统的数据驱动会很慢,所以用时间轴的方式 function initCurve(_data){ var resul ...

  7. Layui 好用的弹出框

    layui的下载地址: http://www.layui.com/ 需要引用layui里面的css跟js layui自带jquery var $ = layui.$ 一个直接弹出另一个窗体的弹出框 w ...

  8. layui弹出框打开第二次select内容无法显示问题

    今天, 在使用layui弹出框的时候, 第一次进入select内容加载是正常的, 将弹出框关闭再次进入后select下拉框内容为空, 经排查是因为每次弹出窗口z-index都会改变, 弹出框的z-in ...

  9. 关于Layer弹出框初探

    layer至今仍作为layui的代表作,她的受众广泛并非偶然,而是这五年多的坚持,不断完善和维护.不断建设和提升社区服务,使得猿们纷纷自发传播,乃至于成为今天的Layui最强劲的源动力.目前,laye ...

随机推荐

  1. 每日英语:Skull Shakes Up Human Family Tree

    A newly discovered 1.8 million-year-old skull offers evidence that humanity's early ancestors emerge ...

  2. 【Maven学习】Maven打包生成包含所有依赖的jar包

    http://blog.csdn.net/u013177446/article/details/54134583 ******************************************* ...

  3. Android开发日记(三)

    protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentV ...

  4. Maven项目下HttpServletRequest 或 HttpServletResponse需引用的依赖包

    转载: http://xyly624.blog.51cto.com/842520/865630/ Maven项目下HttpServletRequest 或 HttpServletResponse需引用 ...

  5. Gtest创建第一个测试

    gtest测试框架是在不同平台上(Linux,Mac OS X,Windows,Cygwin,Windows CE和Symbian)为编写C++测试而生成的.它是基于xUnit架构的测试框架,支持自动 ...

  6. Unity3D中的序列化测试

    Unity3D中序列化字段常使用[SerializeField],序列化类常采用[System.Serializable],非序列化采用[System.NonSerialized]. 序列化类使用时发 ...

  7. 常用sqoop操作

    1. 关系型数据库到hive sqoop import --connect jdbc:mysql://localhost:3306/datahouse --username datahs --pass ...

  8. each,collect map collect! map!

    arr = [1,2,3] 1) arr2 = arr.each{|element| element = element * 2} #arr与arr2仍然都等于[1,2,3]   each返回原数组 ...

  9. laravel 5.1 的程序性能优化(配置文件)

    命令优化 本文的目的是来弄清楚一些优化命令在 Laravel 5.1 和之前版本之间的差别. 在 15年6月发布的 Laravel 5.1版本中, 命令和他们的逻辑方法被清理掉, 本文章就是描述这些不 ...

  10. css鼠标移动到文字上怎样变化背景颜色

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...