123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511 |
- var delFiles = []; //用于删除图片
- var filesContainer= {}; //存储最终要上传的图片
- var files ; //存储选择图片的数量
- var fContainer= {}; //用于传父级传变量,格式 parent.fContainer
- var depositImg =[];//用于存放弹窗图片
- layui.use(['form','layer','laydate','table','upload'],function(){
- var form = layui.form,
- layer = layui.layer,
- $ = layui.jquery,
- table = layui.table,
- upload = layui.upload;
- var tableIds = 'newsList';
- //楼盘列表
- var tableIns = table.render({
- elem: '#'+tableIds,
- url : '/newsknowledge/homeform',
- cellMinWidth : 95,
- method:'post',
- page : true,
- height : 600,
- limit : 20,
- id:'tablerReload',
- cols : [[
- {type: "checkbox", width:50},
- {type:'numbers'},
- {field: 'id', title: 'ID', width:80, align:"center",sort: true},
- {field: 'subject', title: '标题',align:'center',templet:function(d){
- // return '<a href="http://www.taofangwang.com/news/details/'+d.id+'/" target="_blank">'+d.subject+'</a>'
- return '<span>'+d.subject+'</span>'
- }},
- {field: 'name', title: '栏目',width:120, align:'center'},
- {field: 'clicks', title: '点击数',width:100, edit: 'text',align:'center',clicks: true,templet:"#clicksBox"},
- {field: 'sort', title: '排序',width:100, edit: 'text',align:'center',clicks: true,templet:"#sortBox"},
- {field: 'true_click', title: '真实点击数',width:120, align:'center',sort: true},
- {field: 'create_at', title: '添加时间',width:120, event:'sortData', align:'center',sort: true},
- {field: 'is_show', title: '审核',width:75, event:'housesNews', align:'center',templet:function (d) {
- if(d.is_show == 2){
- return '<input type="checkbox" value="'+d.id+'" name="'+d.is_show+'" lay-skin="switch" lay-filter="switchTest" lay-text="|">'
- } else {
- return '<input type="checkbox" checked value="'+d.id+'" name="'+d.is_show+'" lay-skin="switch" lay-filter="switchTest" lay-text="|">'
- }
- }},
- {title: '操作', width:100, templet:'#housesListBar',fixed:"right",align:"center"}
- ]]
- });
-
- table.reload('tablerReload'); //重新加载
- //加载省数据
- function loadProvince() {
- $.ajax({
- url : '/dictionarynews/pidlist',
- type : 'post',
- data : {'pid':0},//这里使用json对象
- success : function(data){
- var areaData = data.data;
- var proHtml = '';
- $.each(areaData,function (k,v) {
- proHtml += '<option value="' + v.id +'">' + v.name + '</option>';
- })
- //初始化省数据
- $('select[name=province]').append(proHtml);
- form.render();
- },
- fail:function(){
- }
- });
- }
- loadProvince();
- form.on('select(province)',function (data) {
- $.post('/dictionarynews/pidlist',{'pid':data.value},function (data) {
- $('select[name=label_id]').html('');
- var proHtml = '<option value="">请选择子类栏目</option>';
- if(data.code == 200){
- var areaData = data.data;
- for (var i = 0; i < areaData.length; i++) {
- proHtml += '<option value="' + areaData[i].id +'">' + areaData[i].name + '</option>';
- }
- //初始化省数据
- $('select[name=label_id]').append(proHtml);
- }
- form.render();
- })
- })
- //表格头部操作菜单
- var $ = layui.$, active = {
- addData: function(){ //获取选中数据
- var index = layui.layer.open({
- title : "添加资讯",
- type : 2,
- area:['80%','100%'],
- maxmin: true,
- content : "/newsknowledge/create",
- end:function () {
- table.reload('tablerReload');
- }
- })
- layui.layer.full(index);
- },
- reload:function () {
- var form = pfgs_serialize($('form'));
- console.log(form);
- var name = '';
- var id = '';
- if(form.input_house == 'name'){
- name = form.input_house_text;
- } else if(form.input_house == 'id'){
- id = form.input_house_text;
- }
- var city = '';
- if(form.province != ''){
- city = form.province;
- }
- if(form.label_id != '' && typeof form.label_id != 'undefined'){ //父类存在 子类不存在的情况
- city = form.label_id;
- }
- table.reload('tablerReload',{
- where:{
- id:id,
- name:name,
- city:city
- },
- page:{
- curr:1
- }
- })
- }
- };
- //监听指定开关
- form.on('switch(switchTest)', function(data){
- var state = '';
- if(data.elem.name == 1){
- state = 2;
- }else if(data.elem.name == 2){
- state = 1;
- }
- layer.confirm('确定要修改此操作吗?',{btn: ['确定', '取消']},function () {
- $.post('/newsknowledge/editfrom',{id:data.value,is_show:state},function (data) {
- if(data.data != null){
- layer.msg(ReturnInfo(data.data),{icon:5});
- return false;
- }
- layer.msg(data.msg);
- })
- },function (aa) {
- table.reload('tablerReload'); //重新加载
- })
- });
- $('.demoTable .layui-btn').on('click', function(){
- var type = $(this).data('type');
- active[type] ? active[type].call(this) : '';
- });
- /* 列表操作 edit 修改后执行 2018.7.24*/
- table.on('edit('+tableIds+')', function(obj){
- var data = obj.data;
- var event = obj.field;
- switch (event){
- case 'clicks':
- $.post("/newsknowledge/editfrom",{id:data.id,clicks:obj.value,},function (data) {
- if(data.data != null){
- layer.msg(ReturnInfo(data.data),{icon:5});
- return false;
- }
- layer.msg(data.msg)
- })
- break;
- case 'sort':
- $.post("/newsknowledge/editfrom",{id:data.id,sort:obj.value,},function (data) {
- if(data.data != null){
- layer.msg(ReturnInfo(data.data),{icon:5});
- return false;
- }
- layer.msg(data.msg)
- })
- break;
- }
- })
- //表格右边操作栏目
- table.on('tool('+tableIds+')', function(obj){
- var data = obj.data;
- if(obj.event === 'edit'){ //编辑操作
- var index = layui.layer.open({
- title : "编辑资讯",
- type : 2,
- area:['','100%'],
- maxmin: true,
- content : "/newsknowledge/edit?id="+data.id
- })
- layui.layer.full(index);
- }
- });
- //添加and修改图片
- upload.render({
- elem: '#upload_edit',
- url: '/news/newseditform'
- ,data:{token:csrfToken}
- ,multiple: true
- ,number:3
- ,auto:false
- ,size:1000 //限制上传图片的大小,单位为KB
- ,exts: 'png|jpg|jpeg' //只允许上传压缩文件
- ,bindAction:'#addcity'
- ,choose: function(obj){
- //将每次选择的文件追加到文件队列
- files = obj.pushFile();
- //预读本地文件,如果是多文件,则会遍历。(不支持ie8/9)
- obj.preview(function(index, file, result){
- depositImg.push({src:result,data:file});
- filesContainer[index] = file;
- $('#popup_1_imgBox').append('<div class="layui-upload-img"><div class="delete-list" id="delimg"><i class="layui-icon fa-trash-o" ></i></div><img delIdentification="'+index+'" src="'+ result +'" alt="'+ file.name +'"></div>');
- });
- }
- });
- layer.photos({
- photos: '#demo2',
- closeBtn: 1
- ,anim: 5 //0-6的选择,指定弹出图片动画类型,默认随机(请注意,3.0之前的版本用shift参数)
- });
- // 正文上传事件
- $('#popup_2').on('click','.layui-upload-img',function(){
- // 处理选中与取消
- $(this).find('.layui_w_triangle').toggle('30',function(){
- $(this).parent().attr('data-id','pitch')
- if($(this).is(":hidden")){
- $(this).parent().removeAttr('data-id');
- var _fsrc = $(this).parents('.layui-upload-img').find('img.pitch_img').attr('src');
- for(i in depositImg){
- if(depositImg[i] == _fsrc){
- depositImg.splice(i, 1); //取消选择时,从数组中删除
- }
- }
- }else{
- $(this).parent().attr('data-id','pitch')
- var _fsrc = $(this).parents('.layui-upload-img').find('img.pitch_img').attr('src');
- depositImg.push(_fsrc); //选中的图片,把src地址存入数组
- }
- });
- })
- // 封面图功能
- $('.upload_box').on('click',function(){
- var txtData = UE.getEditor('editor_content').getContent();
- var imgReg = /<img.*?(?:>|\/>)/gi; //匹配图片(g表示匹配所有结果i表示区分大小写)
- var srcReg = /src=[\'\"]?([^\'\"]*)[\'\"]?/i; //匹配src属性
- var txtImg = txtData.match(imgReg);
- var index = layer.open({
- type: 2,
- title:'选择封面',
- skin: 'layui-layer-rim', //加上边框
- area: ['650px', '500px'], //宽高
- content : "/news/popup",
- success: function(layero, index){
- var poupBody = layer.getChildFrame('body', index); //获取当前弹窗的doc
- for(i in txtImg){
- var _src = txtImg[i].match(srcReg)[0];
- poupBody.find('#popup_2').append('<div class="layui-upload-img"><div class="layui_w_triangle"><img src="/static/images/triangle.png" alt="" /></div><img class="pitch_img" '+_src+'/></div>');
- }
- }
- })
- })
- $('#layui_confirm').on('click',function(){
- var doc = $('#demo2', window.parent.document); //JQ获取弹窗父层doc
- var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
- if(depositImg.length > 3){
- layer.msg('封面图只能选择3张!!',{time:1000,shade:0.5})
- return false;
- }
- var _leng = doc.find('.layui-upload-img').length;
- if(_leng < 3){
- for(i in depositImg){
- if(typeof depositImg[i] == "object"){
- doc.append('<div class="layui-upload-img"><div class="delete-list" id="delimg"><i class="layui-icon fa-trash-o" ></i></div><img src="'+ depositImg[i].src +'" ></div>');
- parent.fContainer[i]=depositImg[i].data
- }else{
- doc.append('<div class="layui-upload-img"><div class="delete-list" id="delimg"><i class="layui-icon fa-trash-o" ></i></div><img src="'+ depositImg[i] +'" ></div>')
- parent.fContainer[i]=depositImg[i];
- }
- }
- }else if(_leng >3){
- layer.msg('封面图只能选择3张!!',{time:1000,shade:0.5})
- }
- parent.layer.close(index); //关闭iframe页面
-
- })
-
- delImg("popup_1_imgBox","delimg"); // 删除图片
- //添加
- form.on('submit(tijiao)',function (data) {
- var index = layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
- var formData = new FormData($( "#signupForm" )[0]);
- for(i in fContainer){
- formData.append('img[]',fContainer[i]);
- }
- $.ajax({
- cache : true,
- type : "post",
- url : "/newsknowledge/createform",
- data : formData, // 你的formid
- contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
- processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
- error : function(request) {
- layer.close(index);
- layer.alert("网络超时");
- },
- success : function(data) {
- if(data.data != null){
- layer.msg(ReturnInfo(data.data),{icon:5});
- return false;
- }
- layer.msg(data.msg)
- }
- });
- return false;
- })
- //修改
- form.on('submit(edit)',function (data) {
- layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
- var formData = new FormData($( "#signupForm" )[0]);
- for(i in fContainer){
- formData.append('img[]',fContainer[i]);
- }
- //需要删除的图片
- if(delFiles.length > 0){
- $.each(delFiles,function (k,v) {
- formData.append('delimg[]',v);
- })
- }
- $.ajax({
- cache : true,
- type : "post",
- url : "/newsknowledge/editfrom",
- data : formData, // 你的formid
- contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
- processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
- error : function(request) {
- layer.alert("网络超时");
- },
- success : function(data) {
- if(data.data != null){
- layer.msg(ReturnInfo(data.data),{icon:5});
- return false;
- }
- layer.msg(data.msg)
- }
- });
- return false;
- })
- //批量删除
- form.on('submit(del_alls_news)',function (data) {
- var checkStatus = table.checkStatus('tablerReload');
- if(typeof checkStatus.data[0] == 'object'){
- layer.confirm('您确定要删除吗?',{btn:['确认','取消']},function(){
- layer.msg('数据提交中,请稍候',{icon: 16,time:false,shade:0.8}); //数据提交提示
- var formdat = new FormData();
- $.each(checkStatus.data,function (key,val) {
- formdat.append('id[]',val.id);
- })
- $.ajax({
- cache : true,
- type : "post",
- url : "/newsknowledge/dels",
- data : formdat, // 你的formid
- contentType: false, //jax 中 contentType 设置为 false 是为了避免 JQuery 对其操作,从而失去分界符,而使服务器不能正常解析文件
- processData: false, //当设置为true的时候,jquery ajax 提交的时候不会序列化 data,而是直接使用data
- error : function(request) {
- layer.msg("请联系管理员");
- },
- success : function(data) {
- layer.msg(data.msg);
- table.reload('tablerReload');
- }
- });
- })
- return false;
- }
- layer.msg('请选择需要删除的内容',{icon:5});
- return false;
- })
- });
- //删除图片
- $('#demo2').on("click","#delimg",function () {
- var name = $(this).next().attr("imgname");
- console.log(name);
- var delIdentification = $(this).next().attr("delIdentification");
- if(typeof(delIdentification) != 'undefined'){
- delete filesContainer[delIdentification];
- delete files[delIdentification] ;
- }
- if(typeof(name) != 'undefined'){
- delFiles.push(name);
- }
- $(this).parent().remove();
- })
- $(function(){
- // 动态添加批量删除按钮
- var _btn = '<div class="layui-inline " style="float:left;position:relative;left:10px;bottom:35px">'
- + '<a class="layui-btn layui-btn-danger search_btn layui_w_btn" style="height:30px;line-height:30px;font-size:14px;" lay-submit="" lay-filter="del_alls_news">批量删除</a>'
- + '</div>'
- $('.layui-form').append(_btn)
- })
- //判断是否需要编辑,需要才加载
- var verdict = $('#editor_content').html();
- if(typeof verdict == "string"){
- var ue = UE.getEditor('editor_content'); //编辑器
- }
- // 选择封面图弹窗选择项卡
- $('.layui-tab-title .site-demo-active').on('click', function(){
- $(this).addClass('layui-this').siblings().removeClass('layui-this');
- var lay_id = $(this).attr('lay-id');
- $('.layui-tab-item').removeClass('layui-show')
- $('.layui-tab-content #'+lay_id).addClass('layui-show')
- });
- // 弹窗本地选择图片删除功能
- function delImg (oid,delId){
- $('#' +oid).on("click","#"+delId,function () {
-
- var name = $(this).next().attr("imgname");
- var delIdentification = $(this).next().attr("delIdentification");
- if(typeof(delIdentification) != 'undefined'){
- delete filesContainer[delIdentification];
- delete files[delIdentification] ;
- }
- if(typeof(name) != 'undefined'){
- delFiles.push(name);
- }
- var _ksrc = $(this).parents('.layui-upload-img').find('img').attr('src');
- for(i in depositImg){
- if(typeof depositImg[i] == "object"){
- if(depositImg[i].src == _ksrc){
- depositImg.splice(i, 1); //取消选择时,从数组中删除
- }
- }else if(depositImg[i] == _ksrc){
- depositImg.splice(i, 1); //取消选择时,从数组中删除
- }
-
- }
- $(this).parent().remove();
- })
- }
- //获取标题
- $("#keywords").blur(function(){
- var title=$(this).val();
- var keyword='';
- $.ajax({
- url:"/newsknowledge/participle",
- type:"POST",
- data:{title:title},
- dataType:"json",
- success:function(data){
- $.each(data.data, function (i, data) {
- keyword+=data.word+'、';
- $('input[name="keywords"]').val(keyword);
- })
- }
- });
- //$('input[name="keywords"]').val(tex);
- });
|