使用json结果集的jquery移动列表视图分页

时间:2012-02-15 06:05:48

标签: jquery mobile cordova

我正在使用jquery mobile和phonegap。

这是我的json结果集从服务器获取并放入全局变量。

var categoriesArr = [
            {    
            "Categories": "Bengali Products",        
            "desc": [{"code":"40740","product":"Alphonso Mango Jam 300 Gms","rate":"54.00"}]                                
            },
        {    
        "Categories": "Beverages (Town)",        
            "desc":  [{"code":"40011","product":"Badam Powder 100grams","rate":"30.00"}]                            
            }           
        ];

如果您点击一个类别,它将显示包含超过100条记录的类别说明(desc)。

使用此结果集,如何在列表视图中对类别进行分页(每页10个)。

2 个答案:

答案 0 :(得分:1)

你的问题有点模糊 - 这就是你需要的吗?

var len = categoriesArr.length;
for(var i = 0 ; i < len ; i++){
    //do something with categoriesArr[i].Categories (could write to DOM)
    console.log(categoriesArr[i].Categories);
    for(var x in categoriesArr[i].desc[0]){
        //do something with categoriesArr[i].desc[0][x] (could write to DOM)
        console.log(x + ": " + categoriesArr[i].desc[0][x]);
    }
}

我将结果记录到Web控制台,但请随意做任何事情。

要进行分页,您应该查看FilamentGroup's Mobile Pagination Plugin

修改后编辑

你的意思是desc数组包含多个元素,la:

var categoriesArr = [
            {    
            "Categories": "Bengali Products",        
            "desc": [{"code":"40740","product":"Alphonso Mango Jam 300 Gms","rate":"54.00"}, {"code":"1337","product":"jordanarseno","rate":"Free"}]                                
            },
        {    
        "Categories": "Beverages (Town)",        
            "desc":  [{"code":"40011","product":"Badam Powder 100grams","rate":"30.00"}]                            
            }           
        ];

如果是这样,迭代desc数组而不是假设零索引:

for(var i = 0, len = categoriesArr.length ; i < len ; i++){
    //do something with categoriesArr[i].Categories (could write to DOM)
    console.log(categoriesArr[i].Categories);
    for(var j = 0, dlen = categoriesArr[i].desc.length ; j < dlen ; j++){
        for(var x in categoriesArr[i].desc[j]){
            //do something with categoriesArr[i].desc[j][x] (could write to DOM)
            console.log(x + ": " + categoriesArr[i].desc[j][x]);
        }
    }
}

答案 1 :(得分:0)

我认为您可以使用JQuery table sorter解决问题。

它支持在包含pager时进行排序和分页。