Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 使用JsonQuery在filter.js内返回有序json数据_Jquery_Json_Jquery Filter - Fatal编程技术网

Jquery 使用JsonQuery在filter.js内返回有序json数据

Jquery 使用JsonQuery在filter.js内返回有序json数据,jquery,json,jquery-filter,Jquery,Json,Jquery Filter,我正在使用filter.js from-great脚本 var FJS = FilterJS(products, '#products', { template: '#productfinder-template', search: {ele: '#searchbox'}, callbacks: { beforeAddRecords: function(records){ var jq = JsonQuery(records);

我正在使用filter.js from-great脚本

var FJS = FilterJS(products, '#products', {
    template: '#productfinder-template',
    search: {ele: '#searchbox'},
    callbacks: {
        beforeAddRecords: function(records){
            var jq = JsonQuery(records); 
            console.log(jq.order({'artnr': 'asc'}).exec());
        },
        afterFilter: function(result){
            $('#total_products').text(result.length+' records found');
        }
    }
});
在回调“beforeAddRecord”中,我调用了JsonQuery“order”函数,结果是一个有序的Json列表,这正是我想要的。问题是如何在屏幕上显示此结果


有人有过这个脚本的经验吗

做了一些测试,发现如下问题。出于测试目的,我将代码放在一个按钮上

jQuery("#xselected").on('click', function(){ 
    var jq = JsonQuery(products); 
    products = jq.order({'artnr': 'asc','category':'asc'}).exec();
    FJS.removeRecords({});
    FJS.addRecords(products);
    FJS.filter;
});

从过滤器中删除所有记录,并在使用JsonQuery中的order函数后重新添加。

我还不能发表评论,因此我将此作为第二个答案发布。我在发布的代码中遇到了一些奇怪的行为,当我在过滤器之间切换时,“产品”中的数据翻了一番。对于少量的项目来说,这并不是什么大问题,但当我添加了更多的项目,并进行了多次排序时,它开始减慢所有事情的速度

问题不在于FJS,而在于“点击”功能。它显然保存了会话中每个更改事件的所有数据。要解决此问题,只需在
.on()
之前添加
.unbind()


嘿,雷科德,你能把你所有的代码都粘贴上去吗?你也制作了filter.js来对数据进行排序吗?我的意思是目前它不支持排序,所以你试过了吗?它起作用了吗?
jQuery("#xselected").unbind().on('click', function(){ 
    var jq = JsonQuery(products); 
    products = jq.order({'artnr': 'asc','category':'asc'}).exec();
    FJS.removeRecords({});
    FJS.addRecords(products);
    FJS.filter;
});