Funk
Funk
  • 发布:2015-10-26 13:42
  • 更新:2016-09-29 11:58
  • 阅读:2548

索引列表之动态加载——搜索改如何处理?

分类:MUI

原js的搜索是根据静态的数据进行处理,如果是js动态加载的,我测试发现无法获取到数据,我该如何根据现在的js进行改写?还是说只能重写搜索?

2015-10-26 13:42 负责人:无 分享
已邀请:

最佳回复

houfeng2016

houfeng2016

数据加载完成后,再通过如下代码完成实例化

mui("selector").indexedList()
  • blk

    selector是什么东东,在线等~

    2015-11-02 16:37

  • blk

    谢谢大神...解决了 就是你说的这样...

    2015-11-02 16:40

  • houfeng2016

    解决就好,selecteor 指的是 css3 选择器表达式,比如 “#id”、“.className” 等

    2015-11-02 16:45

老火

老火

//如果是动态加载的列表,记得数据加载完成后再实例化,不然搜索就用不成了  
$(function() {  
    var key = getcookie("key");  
    $.ajax({  
        type: "post",  
        url: ApiUrl + "/index.php?act=member_chat&op=get_friend_list",  
        data: { key: key },  
        dataType: "json",  
        success: function(result) {  
            checklogin(result.login);  
            var html = template('friend_list', result);  
            $(".friend_list").html(html);  

            var header = document.querySelector('header');  
            var footer = document.querySelector('footer');  
            var list = document.getElementById('list');  
            //calc hieght  
            list.style.height = (document.body.offsetHeight - header.offsetHeight - footer.offsetHeight) + 'px';  
            window.indexedList = new mui.IndexedList(list);  
        }  
    });  
});
  • blk

    第一次动态加载数据是没问题的,但是我有侧滑选择,选择部门后 调用接口重新绑定数据后搜索就不好用了,至今未解决

    2015-12-25 14:52

Funk

Funk (作者)

哈哈 在某大神的帮助下,发现了问题所在:之所以出现这样的问题并不是数据不在,而是索引的初始化顺序错误。mui.indexedlist.js 的初始化必须在数据加载好之后进行,否则它只会获取一次数据,如果数据未加载好就获取,便导致内容永远为空。

blk

blk

内容是加载出来了 但是搜索框的快速搜索不管用了 输入什么都显示没有数据

  • Funk (作者)

    你在mui.indexedlist.js调试看看搜索的数据内容是不是空的 如果数据源是空得 当然显示没有数据啦~

    2015-11-02 14:43

  • blk

    这个js有点乱,哪个属性是存放数据源的??

    2015-11-02 15:19

4***@qq.com

4***@qq.com

但是搜索框的快速搜索不管用了 输入什么底下的数据都不动。还是显示全部

  • 老火

    只要是能初如化成功,搜索应该是没得问题的,如果不能搜索你就看下你的数据格式跟官方的例子是不是不一样

    2016-10-08 10:16

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