Javascript Angularjs在angular.forEach中追加值

Javascript Angularjs在angular.forEach中追加值,javascript,angularjs,Javascript,Angularjs,需要一些关于角度和复选框的帮助,以及如何将一个变量与所有选中值组合在一起。这是我到目前为止得到的,但似乎无法找到一种连接所有已检查值的好方法,以便将它们发送到REStful$资源。如何以以下格式获取某个变量或$scope项及其所有选中值。e、 g: types = Permanent,Contract,Any,Fixed Term 复选框的示例数据($scope.newJobSearch.type): { “永久”:“永久”, “合同”:“合同”, “永久或合同”:错误, “任何”:“任何”

需要一些关于角度和复选框的帮助,以及如何将一个变量与所有选中值组合在一起。这是我到目前为止得到的,但似乎无法找到一种连接所有已检查值的好方法,以便将它们发送到REStful$资源。如何以以下格式获取某个变量或$scope项及其所有选中值。e、 g:

types = Permanent,Contract,Any,Fixed Term 
复选框的示例数据($scope.newJobSearch.type):

{
“永久”:“永久”,
“合同”:“合同”,
“永久或合同”:错误,
“任何”:“任何”,
“固定期限”:“固定期限”
}
{{jobType}}
$scope.newJobSearch={};
函数searchJobs(newJobSearch){
angular.forEach(newJobSearch.type,函数(值){
如果(值!=false){
$scope.queryTypes.push(value);//似乎不起作用
//此处的某些变量包含所有字符串值,例如:
//永久的、合同的、固定期限的
}
});
}
见此

您可以结合使用
ng repeat
ng change
来更新结果集:

控制器:

$scope.result = {};

$scope.items = [
  { name: "Permanent", checked: false },
  { name: "Contract", checked: false },
  { name: "Permanent or Contract", checked: false },
  { name: "Any", checked: false },
  { name: "Fixed", checked: false }
];

$scope.updateResult = function () {
  $scope.items.forEach(function (item) {
    $scope.result[item.name] = item.checked ? item.name : false;
  });
};

$scope.updateResult();
html:

<div ng-repeat="item in items">
  <input ng-model="item.checked"
         ng-change="updateResult()"
         type="checkbox">
  {{ item.name }}
</div>

{{item.name}

我根本不懂你的代码。不管怎么说,我认为你在寻找这样的东西:

$scope.jobTypes =  ['Permanent','Contract','Any','Fixed Term'];
$scope.newJobSearch;
$scope.newJobSearch.type = [];
$scope.newJobSearch.type.checked = $filter('filter')($scope.newJobSearch.type, {checked: true});
然后:

<label class="checkbox-inline" for="{{jobType}}" ng-repeat="jobType in jobTypes ">
        <input type="checkbox" id="{{jobType}}" value="{{jobType}}" ng-model="newJobSearch.type[$index]" > {{jobType}}
</label>

{{jobType}}

您不需要函数将数据绑定到模型,因为Angular将自己绑定。

我不理解这个问题和代码。。。您正在尝试根据第一行上的对象进行CheckBowe?不,抱歉,第一个值是实际值,即在各种选中位置的所有输入的结果。当它们被选中时,它们被分配给它们的值和那些不是false的值。我想将它们转换为一个以“,“所以它可以被发送到REST资源。你在哪里声明了$scope.newJobSearch?是的,我在上面声明过。”
<label class="checkbox-inline" for="{{jobType}}" ng-repeat="jobType in jobTypes ">
        <input type="checkbox" id="{{jobType}}" value="{{jobType}}" ng-model="newJobSearch.type[$index]" > {{jobType}}
</label>