动态地为JSON子数组添加值?
我正在尝试实现图像中所示的filter。 我正在使用Angular JS框架,JQuery。
要求是,我有复选框filter,如应用程序名称,状态等。在选择应用程序或状态时,我需要动态创建一个JSON,如下所示。 应根据复选框值自动添加或删除“filterValues”中的值。
根据json值,我将查询数据库并获取结果并显示。
我正在构建如下的复选框:
相应的控制器代码如下
$scope.change=function(filterCategory, filterField, filterValue, filterAdd){ $scope.filters[filterCategory]={"filterField":filterField,"filterValues":[filterValue]}; console.log($scope.filters);
}
任何帮助深表感谢!!
{ "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" ] }
}
应根据复选框值自动添加或删除“filterValues”中的值。
使用JSON.stringify和replacer回调来实现这个目的:
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)
Interesting Posts
我的Angular JS应用程序适用于桌面浏览器,但不适用于移动浏览器
angular-datatable列可拖出表格
使用jquery element.val()时,ng-model没有更新
使用箭头键盘而不是鼠标时,ng-options模型未更新
AngularJs中的自定义排序
我们可以在某个限制之后将对象渲染为html(ng-repeat),我们可以继续从最后一个对象渲染到父元素
jquery-steps进入angularjs指令
ng-repeat排序在jQuery中引发exception
当点击angularjs中的提交表单时,如何删除“请填写此字段”,但其他validation应该有效
以角$ httppost发送数据