请教table里的数据获取问题

提问 未结 2 83
goodbetterts
goodbetterts 2019-10-9
悬赏:20飞吻
版本:layui 浏览器:
请教各位大神,我有这样一个问题,我想点一个编辑按钮,然后弹出一个layer,这个layer里有个table.render,其中有一列是主键无法编辑,其他列有个做成了select,有的做成了switch,在这个页的最后有一个提交按钮,原意是想修改信息以后点按钮提交,结果发现去到的都是table初始绑定的值,无法取到修改后的值。我做了如下尝试:

1、用layui.table.cache.table,这个总是取到的是初始绑定的值
2、想着监听table的select列,结果发现监听不上,form.on(select)没有反应,是不是这种嵌套在table里的select不能监听?

麻烦哪位帮忙看一下这个问题,感谢。
回帖
  • table里面select也是可以监听到的,你试试重新赋值之后执行下form.render()
    0 回复
  • 这是我的代码,仅供参考
     // 监听下拉框,当值有更新时,修改缓存中的数据
    let selects = $(`[lay-id='${tableId}'] .layui-table select[data-name] `)
    for (let i = 0; i < selects.length; i++) {
    let select = selects[i]
    form.on(`select(${select.getAttribute('lay-filter')})`, function (obj) {
    let row = obj.elem.getAttribute('data-index')
    let name = obj.elem.getAttribute('data-name')
    table.cache[tableId][row][name] = obj.value
    });
    }
    0 回复