使用Layui table重载时,发现若是前端多选,减小选项,后台接收的参数不会变化,使用的仍是以前的搜索条件。前端
//执行重载
table.reload('UserTable', {
page: {
curr: 1 //从新从第 1 页开始
},
where: {
key: {
name: searchName.val(),
selected_position:position.getValue('value'),
}
},
}
后端接收: 'key[selected_position][]': ['7', '8']后端
后端接收:'key[selected_position][]': ['7', '8']数组
具体问题缘由未知,参考了网上的解决方案:https://blog.csdn.net/zhuxun_why/article/details/105640387ui
考虑把多选的数组转换为字符串,而后交给后台进行接收,这样就和普通的搜索框,内容一旦有变化就会更新。调整代码:spa
table.reload('UserTable', { page: { curr: 1 //从新从第 1 页开始 }, where: { key: { name: searchName.val(), selected_position:position.getValue('value').toString(),
}
},
}
第一次查询结果:'key[selected_position]': ['7,8'].net
第二次查询结果:'key[selected_position]': ['7']code
后端接收的查询结果已经变化,再进行字符串转换处理,获得真正的搜索选项。blog