gpt4 book ai didi

jquery - 如何迭代数据源以创建 Querybuilder 过滤器

转载 作者:行者123 更新时间:2023-12-01 05:39:34 24 4
gpt4 key购买 nike

我是 jQuery/JSON 新手。我正在使用 mistic100 的查询构建器,但我不确定如何从数据源加载过滤器。在此示例中,3 个过滤器被加载到构建器中。从语法角度来看,我将如何从数据源执行此操作?我想我只是不明白如何迭代所有过滤器(如果它们位于数据源中)。

    $('#builder-basic').queryBuilder({
plugins: ['bt-tooltip-errors'],

filters: [{
id: 'name',
label: 'Name',
type: 'string'
}, {
id: 'category',
label: 'Category',
type: 'integer',
input: 'select',
values: {
1: 'Books',
2: 'Movies',
3: 'Music',
4: 'Tools',
5: 'Goodies',
6: 'Clothes'
},
operators: ['equal', 'not_equal', 'in', 'not_in', 'is_null', 'is_not_null']
}, {
id: 'in_stock',
label: 'In stock',
type: 'integer',
input: 'radio',
values: {
1: 'Yes',
0: 'No'
},
operators: ['equal']
}
}],
rules: rules_basic
});

感谢您的帮助。

最佳答案

当您在GUI中创建过滤器时,您可以保存此过滤器;

var myFilter = $('#builder-basic').queryBuilder('getRules');

您可以将其存储回您的数据存储,就像存储任何其他数据一样。您可能想要序列化它;

var myFilterString="";
if (!$.isEmptyObject(myFilter)) {myFilterString =JSON.stringify(genResult, null, 2);

稍后如果您需要显示此数据,您可以将规则提取为字符串并将其反序列化,然后使用 setRules 在 GUI 中显示规则。

$('#builder-basic').queryBuilder('setRules', JSON.parse(myFilterString));

如果您只想设置不是使用 GUI 创建的规则,则只需创建所需结构的对象并使用 setrules - 或以字符串格式定义它,反序列化并使用 setrules。

JSON 看起来像这样

var rules_widgets = {
condition: 'OR',
rules: [{
id: 'date',
operator: 'equal',
value: '1991/11/17'
}, {
id: 'rate',
operator: 'equal',
value: 22
}, {
id: 'category',
operator: 'equal',
value: '38'
}, {
condition: 'AND',
rules: [{
id: 'coord',
operator: 'equal',
value: 'B.3'
}]
}]
};

关于jquery - 如何迭代数据源以创建 Querybuilder 过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31531849/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com