layui时间,table,大图查看,弹出框,获取音频长度,文件上传
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,大图查看,弹出框,获取音频长度,文件上传的更多相关文章
- Visual Studio 打开解决方案后 弹出框显示 "正在打开文件..." 迟迟没反应 的解决方法
Visual Studio 打开解决方案后 弹出框显示 "正在打开文件...",任务管理器的devenv进程又很正常,不会显示"未响应". 而IDE的左下角有个 ...
- layui layer.open弹出框获取不了 input框的值
layer.open({ title:'添加管理员', type: 1, content: $('.add_html').html(), btn:['添加', '取消'], btnAlign:'c', ...
- 利用layui前端框架实现对不同文件夹的多文件上传
利用layui前端框架实现对不同文件夹的多文件上传 问题场景: 普通的input标签实现多文件上传时,只能对同一个文件夹下的多个文件进行上传,如果要同时上传两个或多个文件夹下的文件,是无法实现的.这篇 ...
- 利用BootStrap Table插件实现自己的弹出框分页。
参考链接1: 官网:http://bootstrap-table.wenzhixin.net.cn/zh-cn/home/ 开始使用:http://bootstrap-table. ...
- 自设table表格,获取内容,并经弹出框的url传参,获取结果显示在弹出框,并加载合计
table表格,选择框 form id="editForm1"> <table class="table_form"> <td > ...
- echart 时间轴、以及y轴值过大但是变化不大显示感觉不出变化的问题+弹出框拖动div事件
1.时间轴 echart 提供了一种图表,如果x轴是一个时间范围,并且是连续的,如果用传统的数据驱动会很慢,所以用时间轴的方式 function initCurve(_data){ var resul ...
- Layui 好用的弹出框
layui的下载地址: http://www.layui.com/ 需要引用layui里面的css跟js layui自带jquery var $ = layui.$ 一个直接弹出另一个窗体的弹出框 w ...
- layui弹出框打开第二次select内容无法显示问题
今天, 在使用layui弹出框的时候, 第一次进入select内容加载是正常的, 将弹出框关闭再次进入后select下拉框内容为空, 经排查是因为每次弹出窗口z-index都会改变, 弹出框的z-in ...
- 关于Layer弹出框初探
layer至今仍作为layui的代表作,她的受众广泛并非偶然,而是这五年多的坚持,不断完善和维护.不断建设和提升社区服务,使得猿们纷纷自发传播,乃至于成为今天的Layui最强劲的源动力.目前,laye ...
随机推荐
- 随笔记:Python于Windows下初实践,及使用Connector/Python连接MySQL
有一同事要离职了,我负责交接一个用Python同步数据的项目. 之前木有做过Python,周休,做个简单的查询数据库,小练一下手. 包含: 安装 连接.查询MySQL 列表 元组 for循环 whil ...
- 0058 Spring MVC如何向视图传值--Model--ModelMap--ModelAndView--@ModelAttribute
MVC,模型.视图.控制器,请求来了,控制器负责找到Controller进行一通计算,计算的结果放到模型里,再找视图把结果呈现出来. 请求里一般都包含了一些参数,前面说了,Spring MVC有很多种 ...
- dp之混合背包poj1742(推荐)
题意:给你价值为a1,a2.....的货币,每种有c1,c2.......个,求这些货币所能组成的价值小于等于m有多少个..... 思路:很像一道多重背包题?那我一开始的确是用多重背包的思路编写的.. ...
- Activiti - 新一代的开源BPM引擎
Activiti 背景简介.服务和功能介绍 背景介绍 Activiti 其核心是 BPMN 2.0 的流程引擎.BPMN 是目前被各 BPM 厂商广泛接受的 BPM 标准,全称为 Business P ...
- git 远程仓库版本的回退以及git reset 几种常用方式记录
由于 github push 了两个比较潦草的commit, 自己很不满意,又不想重新开vpn进行上传,所以找了一下相关的教程. 最后研究了一下,原理为先在本地还原到你想要的commit,然后强制pu ...
- Apache HttpComponents 通过代理发送HTTP请求
package org.apache.http.examples.client; import org.apache.http.HttpEntity; import org.apache.http.H ...
- socket编程基础-字节序/IP/PORT转换/域名
socket编程基础 网络IP操作函数 字符串的IP和32位的IP转换 #include <sys/socket.h> #inlcude <netinet/in.h> #inc ...
- EcmaScript对象克隆之谜
先谈谈深拷贝 如何在js中获得一个克隆对象,可以说是喜闻乐见的话题了.相信大家都了解引用类型与基本类型,也都知道有种叫做深拷贝的东西,传说深拷贝可以获得一个克隆对象!那么像我这样的萌新自然就去学习了一 ...
- 刘昕明:送给和我一样曾经浮躁过的PHP程序员
作者注:2012年偶决定开始写博客了,不为别的,就希望可以通过博客记录我的成长历程同时也希望可以帮助一些刚毕业,刚入行业的兄弟姐们们.我们是一群充满浮躁.抱怨.迷茫的程序猿,想一想3年就这么过去了,社 ...
- JPA多对多关联
关于JPA多对多关系,这是使用学生与教师来表示.一个Student由多个Teacher教,同样一个Teacher也可以教多个学生.Student类如下: package com.yichun.bean ...