清君侧
清君侧
  • 发布:2015-12-16 11:33
  • 更新:2015-12-18 17:28
  • 阅读:8771

mui.indexedlist 列表数据是异步加载,下拉加载更多数据后Append到列表的UL,搜索功能失效

分类:MUI

最近用了mui.indexedlist 索引列表 ,发现如果列表数据是通过”异步加载更多“这种方式的话搜索功能就失效了,如图:
数据加载方式
搜索失效
请问有没有知道应该怎么在异步请求后重新绑定列表的搜索事件
我试着在异步加载完数据后加上这样的代码,但还是没用:
var list = document.getElementById('list');
var header = document.querySelector('header.mui-bar');
//calc hieght
list.style.height = (document.body.offsetHeight - header.offsetHeight) + 'px';
window.indexedList = new mui.IndexedList(list);

2015-12-16 11:33 负责人:无 分享
已邀请:
DCloud_UNI_FXY

DCloud_UNI_FXY

动态添加元素后,可以试试mui("#list").indexedList().findElements();

  • 清君侧 (作者)

    刚刚试了一下,还是不行的

    2016-01-07 16:18

我勒个去

我勒个去

获取信息以后,再执行实例化即可

  • 修光好丑

    你这么说就不对了 还是换个输入法更合理一点

    2015-12-16 16:10

  • 清君侧 (作者)

    获取信息后我再执行 function ReInitIndexList() {

    var header = document.querySelector('header.mui-bar');

    var list = document.getElementById('list');

    list.style.height = (document.body.offsetHeight - header.offsetHeight) + 'px';

    //create

    window.indexedList = new mui.IndexedList(list);


    } 貌似也不行

    2015-12-16 16:20

  • 修光好丑

    换输入法试一下

    2015-12-17 09:32

我勒个去

我勒个去

获取信息以后,
mui("#list").indexedList();

  • 清君侧 (作者)

    非常感谢,不过我试了一下在我这里还是不行

    2015-12-17 09:31

  • 修光好丑

    换输入法试一下

    2015-12-17 09:32

  • 清君侧 (作者)

    回复 修光好丑:你这个喷子,滚

    2015-12-17 10:06

  • 我勒个去

    回复 清君侧:mui后面的对象换成你自己的, 还有注意这个 window.indexedList = new mui.IndexedList(list);

    2015-12-17 10:40

  • 修光好丑

    lz 你不要欺负我脾气好

    2015-12-17 11:14

我勒个去

我勒个去

@修光好丑 别逗他了,呵呵,如果执行初始化还不行,就是window.indexedList = new mui.IndexedList(list); 这个的问题.我早就遇到过了

blk

blk

lz解决了吗 楼上的方法都试了 还是不行

  • DCloud_UNI_FXY

    贴一下你的代码

    2015-12-18 18:16

  • blk

    window.indexedList = new mui.IndexedList(list);

    //加载数据完毕之后再调用一次indexedList()

    function duangduang() {

    window.indexedList = new mui.IndexedList(list);

    mui("#list").indexedList();

    mui("#list").indexedList().findElements();

    }

    duangduang方法会在每次加载数据后执行

    common.postApi(interfaceUrl + "EnterpriseApp/v1.0/GetUserInfoBySkey", data, function(response) {

    dataArray = eval(response.data);

    //alert(JSON.stringify(response.data));

    for (var i = 0; i < dataArray.length; i++) {

    var temp; //临时变量

    var obj = dataArray[i];

    if (headLetter != obj.Header) { //没有此头字母,插入头

    headLetter = obj.Header;

    //列表右侧字母列表

    document.getElementById("headerList").innerHTML += "<a>" + obj.Header + "</a>";

    //主列表字母头

    temp = temHead;

    document.getElementById("UserList").innerHTML += temp.replace("@headLetter", obj.Header).replace("@headLetter", obj.Header);

    }


                    temp = temBody;  
    temp = temp.replace("@id", obj.UserId);
    temp = temp.replace("@Header", obj.Header + obj.Mobile);
    temp = temp.replace("@Mobilecall", obj.Mobile);
    temp = temp.replace("@Mobilemsg", obj.Mobile);
    temp = temp.replace("@titleimg", obj.Avatar);
    temp = temp.replace("@UserName", obj.UserName);
    temp = temp.replace("@DepartmentName", obj.DepartmentName);
    document.getElementById("UserList").innerHTML += temp;
    }
    duangduang();
    }, 'json');

    2015-12-23 10:57

修光好丑

修光好丑

lz 实在不行就换台电脑 这样更安全一点

修光好丑

修光好丑

这个好简单啊

  • weboy

    你是怎么解决的

    2016-04-29 10:06

修光好丑

修光好丑

换个输入法 就行了啊 我之前也遇到这种情况换个输入法就能搜了

修光好丑

修光好丑

我想你用的是搜狗输入法吧 换个百度或者qq输入法就行 (lz我只能帮你到这了)

  • 清君侧 (作者)

    我想你该吃药了

    2015-12-16 12:58

  • 修光好丑

    你这么说我就不高兴了

    2015-12-16 12:59

该问题目前已经被锁定, 无法添加新回复