为什么重载无效啊

提问 未结
20 258
哈哦哈哦
哈哦哈哦 2018-8-10
悬赏:20飞吻
版本:layui 2.3.0 浏览器:谷歌
table.render({
elem: '#LAY_table_user'
,url:'/DeviceClassType/deviceClassType'
,cols: [[
{checkbox: true, fixed: true}
,{field:'id', title: '分类号ID',sort: true}
,{field:'class_byname', title: '分类别名',sort: true} //width 支持:数字、百分比和不填写。你还可以通过 minWidth 参数局部定义当前单元格的最小宽度,layui 2.2.1 新增
,{field:'class_name', title: '分类名称',sort: true}
,{fixed: 'right', width:230, align:'center', toolbar: '#barDemo'}
]]
,id: 'test'
,page: true
});




var active = {
// 查询功能
reload: function(){
var input = $('form input');
console.log(input[0].value);
//执行重载
table.reload('test', {
page:{
curr: 1
}
,where:{
key:{
id:input[0].value,
class_byname:input[1].value,
class_name:input[2].value,
}
}
});
}
}
回帖
  • 这个只是定义了重载的事件,并没有出发事件;
    0 回复
  • @菜鸟程序猿 我加了的,但是还是没用。后面绑定了按钮的。
    0 回复
  • 睡神
    2018-8-10
    @哈哦哈哦 先说下我的方法吧 我的是先将表格写成一个函数 然后在需要重载的是否重新调用一次即可;还有一个方法:就是用jquery模拟鼠标点击事件点击表格的分页的“确定”按钮,这样表格也会重载的
    0 回复
  • @睡神 我的这个不是,我是需要通过条件找到我需要的,其他的暂时不用。就跟官方的实例一样,但是拿来用了就是没有执行重载。
    0 回复
  • 睡神
    2018-8-10
    @哈哦哈哦 你能具体说下你的需求吗
    0 回复



  • 通过id的名字去掉其他的表格
    0 回复
  • @睡神 id 的名字写在input框里面
    0 回复
  • 睡神
    2018-8-10
    @哈哦哈哦 去掉其他的表格?
    0 回复
  • @睡神 就是找到自己想要的表格数据,其他的可以先暂时看不到,但数据是不变的。
    0 回复
  • 睡神
    2018-8-10
    @哈哦哈哦 你说的表格关键字查询?
    0 回复
  • @睡神 是的,
    0 回复
  • 睡神
    2018-8-10
    @哈哦哈哦 我自己的写法是上面给你说的将表格写成一个函数 参数就是你要查询的关键字,点击查询按钮的时候,调用函数 将你的参数获取传入到函数去
    0 回复
  • @睡神 方便看一下你怎么写的吗?
    0 回复
  • 睡神
    2018-8-10
    @哈哦哈哦
    function getXXXList(curnum, limitcount, 你的关键字) {
    layui.use(['layer', 'jquery', 'form', 'table', 'laypage'], function () {
    var layer = layui.layer,
    $ = layui.jquery,
    form = layui.form,
    table = layui.table,
    laypage = layui.laypage;
    var table = table.render({
    elem: '#xxx',
    url: '/page/xxx'
    , where: {
    action: method,
    xxxx: 你的关键字,
    ePage: curnum, // 页码
    eLimit: limitcount // 每页显示条数
    }
    , page: false
    , id: 'xxxx'
    , height: "full-110"
    , cols: [[
    { type: "checkbox", fixed: 'left' }
    , { field: 'xx', title: 'xx', width: 150, align: 'center' }
    , { field: 'xx', title: 'xxx', width: 202, sort: true, align: 'center' }
    ]]
    , done: function (res, curr, count) {
    // 如果是异步请求数据方式,res即为你接口返回的信息。
    // 如果是直接赋值的方式,res即为:{data: [], count: 99} data为当前页数据、count为数据总长度
    laypage.render({
    elem: 'laypage'
    , count: count
    , curr: curnum
    , limit: limitcount
    , layout: ['prev', 'page', 'next', 'skip', 'count', 'limit']
    , jump: function (obj, first) {
    if (!first) {
    curnum = obj.curr;
    limitcount = obj.limit;
    getXXXList(curnum, limitcount, 你的关键字);
    }
    }
    });
    }
    });
    //
    form.on('submit(search)', function () {
    getXXXList(curnum, limitcount, 你的关键字);
    return false;
    });
    0 回复
  • 睡神
    2018-8-10
    @哈哦哈哦 最后面还少个}); 哈哈哈少复制了
    0 回复
  • @睡神 不好意思啊,我刚刚用layui不是很长时间,很多东西看不懂。
    0 回复
  • @哈哦哈哦
    1.确定前端获取到想要的ID了没?
    2.ID传没传到后台;
    3.后台有没有使用ID的值查询出来相应的数据;
    0 回复
  • @菜鸟程序猿 谢谢了,我自己研究吧。
    0 回复
  • 0 回复
  • @哈哦哈哦 你这个截图是页面打开返回的数据还是输入查询条件查询之后返回的数据?
    如果页面打开加载的数据那完全没有问题。
    如果是条件查询之后返回的数据肯定不正确;按照你截图的条件,在所能看到的数据中,返回的正确结果应该为空;造成这个返回数据不正确的肯定是后台没有使用请求传过去的参数进行查询。检查一下后台代码的问题。
    0 回复