【发布时间】:2016-10-18 16:20:30
【问题描述】:
我有一个星期几的复选框。我正在使用 ng-model 但是不能为每个使用相同的模型,因为它会阻止检查多个框。因此,作为一种变通方法,我为模型使用了以下格式:day.sun、day.mon 等。
对象结果为:$scope.day = {sun:0, mon:1}。
我需要删除键名,以便对象看起来像这样:$scope.day = {0, 1}
有没有办法删除键名?我在网上查看过,大多数示例都显示删除了键/值对。 Object.values() 是我遇到的另一个选项,但我得到一个错误,它没有定义。
我需要将该值 ({0,1}) 存储到以下对象中:
$rootScope.schedule = {
"@": {
"let_run": "yes",
"when_holiday": "ignore_holiday",
"begin":"00:00",
"end":"24:00"
},
"weekdays": {
"day": {
"@": {
**"day": $rootScope.day,**
}
}
},
"monthdays": {
"day": {
"@": {
"day": $rootScope.startDate
}
}
}
};
谢谢。
【问题讨论】:
-
这不是一个有效的对象,你的意思是像
[0, 1]这样的数组吗?请参阅 developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/… 了解Object.valuespolyfills -
对不起,我已经编辑了问题...对象是 $scope.day = {sun:0, mon:1}
-
不,您的
{0,1}不是有效对象。 -
这绝对是一个 XY 问题。 meta.stackexchange.com/questions/66377/what-is-the-xy-problem/…。您的 真正 问题是如何检查多个复选框,但您询问了涉及删除键名的潜在解决方案。很遗憾。潜在的解决方案并不是真正有效的。您应该考虑重新审视您的真正问题,并提供更多详细信息来解释您认为不能选中多个复选框的原因。
标签: angularjs object key-value angularjs-ng-model