岁月小偷

岁月小偷 VIP3

认证信息:2018-2019 年度 layui “社区之光”

66950飞吻 2017-9-5 加入 来自北京

(这个人懒得留下签名)

岁月小偷 最近的提问

岁月小偷 最近的回答

  • 16分钟前单页版开启多标签如何避免冲突中回答:

    内容属于 layuiadmin 会员专区,此处不予展示
  • 1小时前layui table 字段筛选功能中回答:

    @林小北 你好,这个一般就是use一下插件就好了,然后注意一点就是将插件提供的css和js放在同一个目录下,js里面会自动去引入,如果不是同一个目录,那么需要自己引入css然后去掉js里面引入css的逻辑代码。
  • 16小时前给 layDate 来一场大革命中回答:

    @我的她迷人 你好这个应该是因为没有修改源码,没有把laydate的内部关键属性给暴露出来导致的,你是使用独立的laydate还是layui呢?然后对应的处理过相关的laydate.js了吗?
  • 1天前laydate 控件小bug中回答:

    这个目前是有这么一个bug,个人觉得是他内部的一些逻辑有问题,就是判断是否非法日期的时候将00时,00分,00秒这些都作为错误的,然后清空的时候它有逻辑去判断你的初始值是否合法,然后判断不合法之后会重新将原始的值设置进去,主要是奇怪的是它清空时候不是简单的val('')就没了,还有很多相关的操作,其中就包括一个值校验在值校验的逻辑中校验到不合法的值又有特殊的处理逻辑,再加上前面提到的那个bug,最终导致:如果你的input或者说laydate的初始值中时分秒只要有任意一个出现00,那么清空就会回到初始值,如果时分秒都没有00,这个时候清空就真的变成空值。可以试试看情况是不是这样,如果要修复的话估计不修改源码不好处理,之前写laydatePro的时候处理过相关的内容,不过有点久了部分逻辑记得不是特别清楚,有兴趣有时间可以自己跟一下laydate的源代码看看点击清空之后它都做了什么操作,到哪一步出的问题。
  • 1天前parent.layer.open() table渲染问题中回答:

    @瀑布点石头 你说的是在渲染完成之后给数据加上LAY_CHECKED: true?这个数据的处理时机是不妥的,应该在渲染之前就加上,一般看情况,如果是后台能够决定的,从后台接口就让他们返回对应的字段信息,如果后台返回基础的,要前端来觉得那些默认选中,那么应该是在数据回来之后,表格渲染之前这个时间节点进行数据修改,也就是可以利用parseData这个回调去做处理,如果是url的话。
  • 1天前表格显示最后无故多出一列中回答:

    那个并不是一列,肉眼都能看出来跟列的区别,前面正常的列是有border的,这块空白的区域没有,初步就能知道它并不是一个空白列只是一个空白区域,更加合理的就是审查元素看看那个空白的区域的节点是什么,是真的th td还是什么其他的。这个一般出现在表格中的字段都设置了宽度,但是所有的列的宽度加起来不能够铺满表格的宽度,那么自然就会有空白的地方;另一种比较常见的就是即使设置了部分列宽度自适应,后面在render完毕之后用鼠标重新调整列宽度,他是不会重新出发resize,不会去重新调整列宽,所以也有可能会出现空白区域。这些都是正常现象,并不是无故多出来一列。
  • 1天前parent.layer.open() table渲染问题中回答:

    @瀑布点石头 很明显的一个报错信息就是你的top是否use过layui了,如果没有top.layui.table本身就是undefined,所以一般来说保险起见是top.layui.use('table', function(){top.layui.table.render({config...})})
  • 4天前parent.layer.open() table渲染问题中回答:

    用父窗口的layer弹出的,里面的表格就应该用父窗口的table去render
  • 5天前tablePlug引用问题中回答:

    看了一下,你是在压缩混淆的修改的吧,简直你用源码的修改然后再打包,不然这样子要找到对应的变量才行
  • 5天前MyLayui plan中回答:

    @深邃如海 这个报错是因为没有修改好table.js让关键信息暴露出来,看到你在其他的帖子里面问的问题,好像是修改了table.js了但是修改的地方执行的时候报错是么?可以加我QQ(470459819)
  • 5天前MyLayui plan中回答:

    @LaySNS 目前layedit基本上够用了,你觉得缺少什么功能呢?字体大小之类的是吗?
  • 6天前动态生成form表单的input框如何添加自定义验证规则中回答:

    layui自定义的规则的原理,你可以理解为是定义了一个校验的规则对象,key对应的就是规则的名称,然后value就是校验规则以及信息返回;那么我的看法是,如果你返回的是这样子的结构,实际每个需要验证的会给你验证的正则表达式,还有匹配不上的信息,那么简单的处理就是你根据返回的数据动态的去form.verify,去添加新的规则,比如form表单的filter为:'userForm',字段是'username',如果我来做,我会定义
    form.verify({
    'userForm|username': [formData[0].verification.reg, formData[0].verification.tip],
    'userForm|age': [formData[1].verification.reg, formData[1].verification.tip]
    });

    <input name="username" lay-verify="userForm|username">
    我觉得有可能是多个相同的规则很tip给你造成疑惑说怎么变成同一个,不过个人的建议是简单处理,即使一百个校验一样但是对应的字段不一样,那么关键是看它校验的字段,而非规则,这样子再根据你的form表单,甚至乎都可以不用管什么表单什么字段,你生成一个uuid之类的都可以,只要保证一点是你根据他返回的数据生成的verify的规则名称,作为字段dom的lay-verify的属性信息,然后不要跟其他的容易冲突了即可,这个才是关键点个人认为;当然了如果你想要把reg和显示信息tip重复的那些归同一类,起一个什么名称,后面你能够检测到是否已经有相同类型(reg和tip都一样)的了,那么也是可以做到通过归类来减少verify的规则数量,但是这个实现比较复杂一些,理论上也是能做到的。
  • 6天前LayuiTable 可不可以做成下图这样的树形数据表格,最好详细一点中回答:

    @flyer403959 你说的是row事件是么?可以试一下在子表的row事件回调中加入一句layui.stope(window.event);试试看
  • 6天前询问框“确定”、“取消”按钮如何换位置中回答:

    @jhhuang 是的,对照了一下更新的,基本上tablePlug里面没有涉及到的2.5.5更新的内容,所以修改一下table.js就好,插件里面的可以不同动
  • 7天前询问框“确定”、“取消”按钮如何换位置中回答:

    @jhhuang 2.5.5对表格的修改不大,今天找时间处理一下,争取今天push一个版本上去
  • 7天前询问框“确定”、“取消”按钮如何换位置中回答:

    btn的顺序换一下,事件也要注意顺序,还有第一个按钮点击不会自动关闭,第2个及后面的点击之后都会默认关闭layer,调换顺序也要注意这一点,不是写着确定的按钮不会默认关
  • 7天前layer.open弹出框jq赋值无法应中回答:

    要注意id的唯一性,你id=“Version”的有多个节点,#from里面的,然后你弹出这个form里面的html弹出之后页面有多个id为Version的节点,用你这么写的方式去找就会不是找到你layer中的,起码的你要限制在layer中去找id为Version的,比如layero.find('#Version').val(123);这样还能找到,但是还有一个你的参数写反了,success的时候第一个参数是layero,代表的是这个layer的jquery对象,第二个参数才是layer的index,你这么写容易搞错,这么写index才是layer的jquery对象。
  • 7天前layui table 字段筛选功能中回答:

    @会暴击的晗妹妹 嗯,就是这个设定,这个筛选的定位就是将当前table中当前页的内容进行一个group,然后hide/show对应的记录,跨页或者更加复杂的,就已经超出这个filter的设定范围了,一般这种情况使用条件查询去处理更好,不是简单的filter的范畴了额
  • 7天前处理下拉在表格中看不到的选项的一种解决方案中回答:

    @ctt 可以的,你在我的测试页面里面试下能拿到不,点击选中与否,这个时候只是设置一个状态,记录在缓存数据里面,这个时候你去更新缓存的数据,最后获得选中的数据,这个是会拿到的,除非是获得选中的数据的逻辑不是从缓存中取数,而是有用其他的逻辑自己监听存储啥的。
  • 7天前处理下拉在表格中看不到的选项的一种解决方案中回答:

    @ctt 你好,关于表格中的表单元素,处理都是通用统一的,就是在值改变的时候要将当前的值更新到table.cache中去,这样子后面获得选中数据的还是他其实就是在这个table.cache中取出数据来,所以只有做到值修改的时候数据同步,才能确保取出来的都是最新的值,具体的做法可以参考我tablePlug插件或者mylayui的测试页面中,关于select的监听的处理
    https://sun_zoro.gitee.io/layuitableplug/testTableCheckboxDisabled.html?v1.0.0-bate2
    https://sun_zoro.gitee.io/mylayui/test/testTable.html
  • 7天前数据表格增加日期控件如何缓存值?中回答:

    @HHK 不客气[微笑]
  • 2019-9-10 9:25:2layui 2.5.5 发布中回答:

    [鼓掌] [鼓掌]
  • 2019-9-9 11:32:2tab选项卡上面的头能隐藏吗?中回答:

    内容属于 layuiadmin 会员专区,此处不予展示
  • 2019-9-9 11:29:5A页面通过lay-href跳转到B页面,B页面添加完数据点击确认后关闭当前页,怎么刷新A页面?中回答:

    内容属于 layuiadmin 会员专区,此处不予展示
  • 2019-9-9 11:27:12layui 子页面向父页面文本编辑器传值 保存时获取不到编辑器内容中回答:

    @luhan0420 不客气[微笑]
  • 2019-9-9 11:9:8router.search 获取参数的值中回答:

    内容属于 layuiadmin 会员专区,此处不予展示
  • 2019-9-9 10:37:30layUI多级表头,内容错位,多出好多列,是啥原因?中回答:

    @coderwar 有没有效果图呢?不太清楚你说的是什么效果
  • 2019-9-9 10:12:1layui 子页面向父页面文本编辑器传值 保存时获取不到编辑器内容中回答:

    我觉得应该是你子页面去让父页面的edit去重新build导致的,父页面你用了一个变量info来保存layedit.build的返回index,后面通过这个index去获取内容,但是其他页面让它重新build了之前build的实例等于是过期了,所以出现你说的问题,一般来说,一个页面去更新另一个页面的edit里面的内容,是要调用layedit.setContent就好,不需要重build。
  • 2019-9-5 14:16:40在弹出层上上传文件,第二次点击按钮就不能上传,希望指点一下中回答:

    @flyer99516 这个是多次渲染同一个节点,就会出现这个问题,可以说是upload的一个bug,具体细节可以看下面连接bug部分的第1点,提到了原因和解决办法。
    https://sun_zoro.gitee.io/mylayui/doc/api.html#/modules/upload
    另外一个解决方案,可以不用修改源码也能处理的,就是在render之前先把要render节点$(要render的节点).data('haveEvents', null);先把这个设置成false或者null,然后再render它;或者实际你要理解的一点是,你这块真的需要重复的render吗?你是用layer弹出一个存在的节点,用upload渲染过了下次再弹出实际是不需要多次render的,只要render一次即可,所以一般来说先检查一下$(要render的节点).data('haveEvents')是否存在,如果存在就不需要再render了这个也是一种方法。
  • 2019-9-5 11:9:3js动态添加select 下拉框不显示,弹框的iframe高度不会随着元素的增加自动适应中回答:

    @fly小胖 不客气[微笑]