论layui中select回显函数中lay-filter可否为变量

讨论 已结 10 350
天仙
天仙 2019-6-17
悬赏:20飞吻
各位小伙伴们好,本人是个java后台,现在前端也得做,现在遇到一个问题,(其他恶心问题都解决了), ,可能一个页面有很多选择下拉框,我的分类,险种保险,不计免赔保费都是数据库中的一个字段通过字符串拼接而成,使用了layui的select回显函数,点击一个下拉框,会对其他下拉框显示有所影响,不影响结果,本人尝试给select的id赋值对应的数据库的id,可无奈在form.on('select(fin)'卡主了,回显一直失效,我现在设置fin为动态,我这个应该如何解决
回帖
  • IDyun
    2019-6-17
    遍历监听。
    var ids=['type_1','type_2','type_3'];//select 的lay-filter 属性值集合
    $.each(ids,function(index,item){
    form.on('select('+item+')', function(data){
    console.log(data.elem); //得到select原始DOM对象
    console.log(data.value); //得到被选中的值
    console.log(data.othis); //得到美化后的DOM对象
    });
    })
    1 回复
  • 天仙
    2019-6-17
    小伙伴们可以看成一个表单中多个下拉框选择事件监听,个人感觉设置lay-filter为变量,不过一直没实现,如何定义一个监听事件使多个下拉框监听互不影响
    0 回复
  • 这个不是一直可以变量的么
    0 回复
  • 天仙
    2019-6-18
    @IDyun 非常感谢您的回复,我昨天也是这样做的,可是这样的话我的监听就没反应了, ,这是我拼接的select, ,我也不知道为啥,这是第一次碰见多个select下拉框,我开始也以为应该没问题,结果现在改成动态就是不起作用
    0 回复
  • 天仙
    2019-6-18
    @flyer717736 你好大神,可以给我提供下您的代码吗,非常感谢您的回复
    0 回复
  • STM
    2019-6-18
    form.render(); 赋值 最后使用一下这个看看
    0 回复
  • 天仙
    2019-6-18
    @STM 我做的这个怎么说,如果我使用了渲染的话并且加上异步的话,select下拉框互不影响确实能解决,我一使用渲染的话我的默认值总是第一个(这两个问题解决其中一个就好,问题一个都没解决掉),头疼,感谢您的回复
    0 回复
  • 全部select都设置为一个监听事件,为每一个select 加 data-type='动态类型,用于区分'
    监听的时候 获得type,根据type作不同的操作
    0 回复
  • 天仙
    2019-6-18
    @风如影 非常感谢,不过问题还是没有解决,不过也学到了新的知识,非常感谢 ,主要是我没有用渲染,当我点击一个下拉框时,其他下拉框默认值会变成第一个,当保存后打开时,其他下拉框会返回之前的默认值,虽然对结果来说没有影响,但是也是有问题,如果我填上渲染后, 我的默认值只会获得每个option中的第一个值, ,大佬你帮忙看下是我这样表达造成的问题吗? 我没使用渲染的话我的默认值是正常的
    0 回复
  • 天仙
    2019-6-18
    @IDyun 你好 你可以帮我看下使用了渲染后我的下拉框默认选项总是为每个下拉框的第一项
    ,就是当我选择分类时,后面的两项也会根据数据库更改,我没使用渲染的话我的select标签互相影响,当选择一个下拉框的选项时,其余下拉框在页面的展示会更改为第一项,不过对应的下拉框后面的险种保险和不计免赔保费不会变,报存后虽然再次打开的时候其他下拉框还是会恢复之前的,虽然对结果没影响,不过还是有问题,之前问的问题还以为是我使用了一个lay-filer属性的问题,不过后面更改了还是这,当我使用渲染后,在done中form.render()后我的该问题可以解决,不过我的下拉框的默认值就全部成为了每个下拉框的第一项,可是逻辑应该没啥问题,求大神们解答解答[心]
    0 回复