table里加下拉框

提问 已结
18 1519
丰丰丰丰丰
悬赏:60飞吻
版本:layui 2.2.6 浏览器:谷歌
有大佬做过 在table的td里加下拉框吗?
有的话 是否可以指点一下~
回帖
  • 可以使用自定义模板返回select节点然后在done回调中form.render('select');然后还有一个需要注意的是默认td 超出是不显示的,所以你会发现form渲染之后select出来了,但是点击下拉的菜单会看不到,需要处理一下,思路是这样,如果需要代码参考的我可以给你传一个。
    0 回复
  • 求大佬指点一下。。
    0 回复
  • 求大佬指点一下。
    0 回复
  • @岁月小偷 大佬 你的意思就是 在返回对应的td里 可以写成 select 的html 是这样吗? 通过模板输出来 然后在done里在重新渲染一遍 大概是这个样子吗?
    0 回复
  • @丰丰丰丰丰 对滴,渲染select就可以了,不过可能实际操作还有很多细节要处理,比如修改一些样式,下拉的option才能看到还有下拉选择之后的处理等等。我写了个小例子你有兴趣可以下下来换个路径跑一下效果。
    https://pan.baidu.com/s/1Wnx2DEANbrV2BBwYqwFGqA
    0 回复
  • @岁月小偷 好 感谢大佬 我先去研究一下
    0 回复
  • @岁月小偷 大佬 这样的问题 但是也是写了溢出自动啊 这个是代码
    这个是数据
    这是哪里有问题b呢
    0 回复
  • @丰丰丰丰丰 你是说下拉出不来还是什么大小的问题,因为select比较大,所以表格的size需要用lg才能兜得下select,或者想办法让select变小,当然如果表格size用sm的话估计也兜不下,起码是一个普通高度的表格。就是去掉size的设置。貌似是没有修改form的select的大小的,估计只能设置表格的size为‘lg’了。
    0 回复
  • @岁月小偷 修改 table的 size 为 lg 可以了 但是 能在sm的情况 把那个放进去吗?
    0 回复
  • @岁月小偷 下拉选 能拉出来 但是 没有在框里
    0 回复
  • @丰丰丰丰丰 这个有点难度,因为貌似layui的form表单好像没有一个设置大小的属性,估计实在要得自己重写一些css然后后面的你说的没有在框里是什么意思?
    0 回复
  • @岁月小偷 大佬 能加你Q 吗? 可以的话 你加下我 349414475 没在框里 是 下拉选的那个框没在td的框里
    0 回复
  • babysit
    2018-8-17
    @岁月小偷 请问怎么样修改数据表格中某行的背景颜色呢
    0 回复
  • @babysit 可以下载这个 https://pan.baidu.com/s/1rzEI5R4RvE0ZqA7Rz83nXA 下来看看里面的效果还有代码,主要的思路就是在初始化的时候在done回调里面比遍历,找到需要设置背景颜色的tr给添加一个class就可以了,后面需要动态的给某一行添加背景颜色也是同理的,关键问题是找到对的table,还有找到对的tr。
    0 回复
  • babysit
    2018-8-17
    @岁月小偷 非常谢谢你,我现在需要做一个数据对比功能,你的回答解决了这部分问题,但是还有一个小问题就是如果我添加了table.on('edit(grid)', function(obj){ }); 那我如何利用这个函数去修改某几行的背景颜色
    0 回复
  • babysit
    2018-8-17
    @岁月小偷 非常感谢,我的下一个问题在layui的done中实现了,目前是这样做的遍历每行数据,然后计算出结果,最后根据结果进行标记,再次对您表示感谢!
    0 回复
  • @babysit 利用这个?不太理解你的意思,这个回调只有在td被点击之后里面可编辑然后编辑之后才会触发的,你要的是和这个修改之后把这一行的背景颜色给改一下是吗?如果是的话这跟我例子里面的点击checkbox给这个checkbox所在的tr添加class一样的额,主要就是进入这个eidt回调的时候能知道当前的这个输入框就可以了找到其他的元素了。
    0 回复
  • @babysit 不客气[微笑]
    0 回复