//控制关联表单元素是否显示 var relateItemMap = {}; for(var i=0; i<formAttributeItemList.length; i++){ var item = formAttributeItemList[i]; //统计当前表单元素选项关联的数量 for(var j=0; j<item.relateFormAttributeList.length; j++){ var relate = item.relateFormAttributeList[j]; var value = 1 if(relateItemMap.hasOwnProperty(relate.relateFieldId)){ value = relateItemMap[relate.relateFieldId] + 1; } relateItemMap[relate.relateFieldId] = value; } //去除没有被选中的关联表单元素 if(!$scope.formData['check'+item.itemId].optionCheck){ for(var j=0; j<item.relateFormAttributeList.length; j++){ var relate = item.relateFormAttributeList[j]; var value = 0 if(relateItemMap.hasOwnProperty(relate.relateFieldId)){ value = relateItemMap[relate.relateFieldId] - 1; } relateItemMap[relate.relateFieldId] = value; } } } //是否显示 for(var prop in relateItemMap){ if(relateItemMap[prop] > 0){ $scope.formValidation['div'+prop] = false; $scope.formValidation['ul'+prop] = false; } else { $scope.formValidation['div'+prop] = true; $scope.formValidation['ul'+prop] = true; } } 注意:在javascript语言中,key的值只能是字符串,不能是其它的。