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 ...
随机推荐
- Logstash5.3借助临时字段修改@timestamp为北京时间,方便按天生成output文件
$more config/first-pipeline.conf input { beats { port => " } } filter { if [type] == "s ...
- CentOS 7 开放防火墙端口 命令
iptables防火墙 1.基本操作 # 查看防火墙状态 service iptables status # 停止防火墙 service iptables stop # 启动防火墙 servi ...
- c++之——虚析构函数
先看代码: #include<iostream> using namespace std; class Parent { public: Parent() :a(), b(), c() { ...
- win7语言设置为英语
控制面板,地区和语言 可以设置格式 键盘和语言 安装显示的语言 选择“可选更新包”,选择语言的语言
- xcode常见报错调试
转载来自于:http://www.cnblogs.com/g-ios/p/4625912.html(广_ios博客园) BMKGeoCodeSearch 反向地理编码一直失败 Location 申请的 ...
- 纯css3实现的文字亮光特效
今天给大家分享一款纯css3实现的文字亮光特效.这款特效文字上一道亮光逐渐扫过文字.效果非常漂亮.一起看下效果: 在线预览 源码下载 实现的代码. html代码: <span class=& ...
- java安全性的一种简单思路
关于接口安全性的考虑.这客户端在调用接口时,将acId授权码以加密的方式(可逆加密方式)传递过来, 服务端这边接收后进行解密,然后在服务器端这边的授权名单中进行匹配,判断该授权码是否被授权,从而判断第 ...
- 无法识别的属性 configProtectionProvider的解决方案
用RsaProtectedConfigurationProvider加密数据库连接字符串时,只要App.config有任何改动,都会提示无法识别的属性 configProtectionProvider ...
- win8.1 64位安装oracle10g客户端心得
方法同win7 64位安装方法(http://www.cnblogs.com/winkey4986/p/3683568.html)下载Oracle 10g的客户端程序,文件名是 10201_clien ...
- KafkaStream实现wordcount
KTable应用 KTable wordCounts = textLines // Split each text line, by whitespace, into words. .flatMapV ...