javascript - 从 json 中删除 "checked"

标签 javascript json angularjs

我关注了这篇文章:How do I bind to list of checkbox values with AngularJS?

从复选框列表中检索数据并将其作为 Json 传递。

我的代码是这样的:

<span ng-repeat="b in neighborhood">
                    <input id="{{b.Id}}" class="checkcheck" type="checkbox" ng-model="b.checked" ng-change="selection.indexOf(b) > -1"
                           ng-click="toggleSelection(b)">
                    {{ b.Name }}

这是我的 Controller 代码:

$scope.toggleSelection = function toggleSelection(b) {
    var idx = $scope.selection.indexOf(b);

    if (idx > -1) {
        $scope.selection.splice(idx, 1);
    }
    else {
        $scope.selection.push(b);
    }
    console.log($scope.selection);

    ProgramsWS.GetByNeighborhood({ neighborhoodList: $scope.selection }, function (resp) {
        console.log(resp);
    })
};

问题是,在最终的 json 中,我得到如下内容:

 

0       b { Name="Name1", Id=51, checked=true, more...}
1       b { Name="Name2", Id=43, checked=true, more...}

问题是: Web 服务无法识别在所有此过程中添加的“已检查”。我怎样才能删除它?

最佳答案

您可以使用delete关键字从对象中删除属性。例如,给定以下对象:

var b = { Name:"Name1", Id:51, checked:true };

删除checked属性:

delete b.checked;

这会产生以下对象:

{ Name:"Name1", Id:51 }

fiddle :http://jsfiddle.net/t0upqxvt/

关于javascript - 从 json 中删除 "checked",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25490731/

相关文章:

javascript - 如何使用正则表达式删除 <p> 标签内的所有 <br/> 标签?

javascript - 转换对象模型最有效的方法是什么?

javascript - 在 Angular UI Datepicker 中更改按钮类

javascript - Angular JS 使用 url 参数预填充表单

javascript - AngularJs,如何为 $http get 发送参数

javascript - 我想检查 yyyy-mm-dd hh :mm (regular expression)

javascript - 如何将mp4文件转换为Wav音频文件?

java - Eclipse 无法识别导入的 json.jar 文件

json - 使用管道在 Angular 4 中选择选项过滤器

java - 如何通过 RestEASY 将带有元音符号 (ü, ö, ä) 的 JSON 发送到我的服务器?