如果父节点关联选择了子节点,但是没有子节点的值,可以通过修改on回调函数来获取子节点的值。在on回调函数中,可以使用data.arr来获取所有选中的节点,然后通过遍历arr数组,获取每个节点的value值,最后将这些value值拼接成一个字符串。以下是修改后的代码示例:

var index = xmSelect.render({
    el: '#demo',
    tips: '请选择用户',
    empty: '呀,数据为空',
    filterable: true,
    searchTips: '请在此搜索用户名',
    paging: false,
    pageSize: 10,
    radio: false,
    repeat: false,
    clickClose: false,
    max: 0,
    height: '130px',
    theme: {
        color: '#409eff',
    },
    data: userList,
    on: function (data) {
        var ids = data.arr.map((item) => {
            if (item.children) { // 判断是否有子节点
                return item.children.map((child) => child.value).join(',');
            } else {
                return item.value;
            }
        }).join(',');
        $('#userIdsText').val(ids);
    },
})

在修改后的代码中,首先判断每个节点是否有子节点,如果有子节点,则通过map方法将子节点的value值取出并拼接成一个字符串;如果没有子节点,则直接将节点的value值作为字符串。最后将所有拼接好的字符串通过join方法拼接起来,并赋值给相应的元素。这样就可以获取到所有选中的节点的值,包括父节点和子节点的值

var index = xmSelectrender el #demo tips 请选择用户 empty 呀数据为空 filterable true searchTips 请在此搜索用户名 paging false

原文地址: https://www.cveoy.top/t/topic/ixpg 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录