我在用数据表格做列表显示 和 关键词搜索的功能,如下图,
我希望一开始渲染表格时候,就额外带一个关键词的参数,如下图
现在问题来了,后端拿到这个关键词的值一直为空字符串,这是为啥?
另外补上,我这个关键词就是一个普通的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"
登录 后才可以发表评论