2.7K Star 16K Fork 3.6K

GVPLayui / layui

 / 详情

layui数据表格渲染带额外参数的问题

已完成
创建于  
2021-07-22 16:44

我在用数据表格做列表显示 和 关键词搜索的功能,如下图,
输入图片说明

我希望一开始渲染表格时候,就额外带一个关键词的参数,如下图
输入图片说明

现在问题来了,后端拿到这个关键词的值一直为空字符串,这是为啥?

评论 (8)

勇敢de心 创建了任务
勇敢de心 关联仓库设置为贤心/layui
展开全部操作日志

另外补上,我这个关键词就是一个普通的layui样式的文本框,如下图:
输入图片说明

我后端能拿到page 和 limit 就是拿不到这个搜索关键字,好奇怪
我试了把这个文本框改成普通的 也拿不到! 难道是layui的BUG? 应该不可能吧?

再加一句:我并不是说第一次拿不到关键词,是当我点击第二页前,我在搜索框中输入了关键词,然后点击第二页,后端依然拿不到这个关键字的值,拿到的一直是空字符串""
输入图片说明

一开始加载表格的时候,这个就是空的啦,你在输入框输入了值,可以直接用table.reload方法,把searchval放到where进行重载

你说的这个我知道,我根你描述下一个场景:
假如我输入一个关键字,点击搜索按钮 这个时候可以在点击事件里面重载,这个没问题。
但是假如按照关键词搜索出来了5页,我此时点击了第五页,这时立马就变成了原来数据的第五页,这是不靠谱的。
所以我希望在点击每一页的时候都能把当前搜索的关键词带过去!
而 我做不到! 因为看官网,数据表格带的分页并没有提供点击某一页的时候让我去写点东西,我想每次点击某一页的时候都去读取关键词,然后一同发到后端去查询所点击页的数据
@sentsin

其实你可以写死一个参数在上面测试时的,会发现这个是没有问题的。
可能是什么原因导致你的输入框的值清空了。
输入图片说明

我的方法,因为查询参数有好几个所以我放在layui-form里头 第一次加载 where:{paramName:''}放空字符串 第二次查询 form.on('submit(search)', function (data) {
table.reload('list', {
method: 'get'
, where: {
paramName: data.field.paramName,
}
, page: {
curr: 1
}
}); }) 这里data.field为表单序列化的参数 ,上面搜索框 <input type="text" name="paramName"输入图片说明

感谢 问题解决

勇敢de心 任务状态待办的 修改为已完成
勇敢de心 修改了描述
贤心 添加了
 
精华
标签

登录 后才可以发表评论

状态
负责人
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
参与者(4)
7696685 ccbunny 1595137506 8470958 wei zehua 1626095949
JavaScript
1
https://gitee.com/layui/layui.git
git@gitee.com:layui/layui.git
layui
layui
layui

搜索帮助