gpt4 book ai didi

javascript - 动态地向 JSON 子数组添加值?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:25:43 25 4
gpt4 key购买 nike

我正在尝试实现如图所示的过滤器。我正在使用 Angular JS 框架,JQuery。

要求是,我有应用程序名称、状态等复选框过滤器。在选择应用程序或状态时,我需要动态创建一个 JSON,如下所示。 “filterValues”中的值应根据复选框值自动添加或删除。

我将根据json值查询数据库并获取结果并显示。

我正在构建如下复选框:

<div class="row-fluid">
<div ng-repeat="status in keywords.kw_Status">
<label class="checkbox">
<input type="checkbox" value="{{status}}" ng-model="isChecked" ng-change="change('Status','txt_Status',status,isChecked)">{{status}}
</label>
</div>

相应的 Controller 代码如下

$scope.change=function(filterCategory, filterField, filterValue, filterAdd){
$scope.filters[filterCategory]={"filterField":filterField,"filterValues":[filterValue]};
console.log($scope.filters);

非常感谢任何帮助!!

I am trying to implement a filter as shown in the image

{
"Region": {
"filterField": "kw_Region",
"filterValues": [
"aa",
"bb"
]
},
"ApplicationName": {
"filterField": "kw_ApplicationName",
"filterValues": [
"aa",
"bb"
]
},
"IssueType": {
"filterField": "kw_IssueType",
"filterValues": [
"aa",
"bb"
]
},
"Outage": {
"filterField": "kw_Outage",
"filterValues": [
"aa",
"bb"
]
},
"Priority": {
"filterField": "kw_Priority",
"filterValues": [
"aa",
"bb"
]
}

最佳答案

The value in "filterValues" should be automatically added or removed based on the check box values.

使用 JSON.stringify 和替换回调来实现这一点:

function replacer(match, offset, fullstring)
{
return replacer.str;
}

replacer.str = "\u0022filterValues\u0022:[\u0022hi\u0022,\u0022bye\u0022]"; /* Use DOM node value */

var foo = JSON.stringify({
"Region": {
"filterField": "kw_Region",
"filterValues": [
"aa",
"bb"
]
},
"ApplicationName": {
"filterField": "kw_ApplicationName",
"filterValues": [
"aa",
"bb"
]
},
"IssueType": {
"filterField": "kw_IssueType",
"filterValues": [
"aa",
"bb"
]
},
"Outage": {
"filterField": "kw_Outage",
"filterValues": [
"aa",
"bb"
]
},
"Priority": {
"filterField": "kw_Priority",
"filterValues": [
"aa",
"bb"
]
}
}).replace(/"filterValues[^\]]+./g, replacer)

关于javascript - 动态地向 JSON 子数组添加值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14995037/

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