按钮取消选择不拼接json对象的数据

时间:2014-11-10 22:26:07

标签: angularjs

我有一对用ng-repeat创建的按钮对。单击每行中的按钮时,它会更改颜色(绿色)以显示已切换颜色,并且与按钮关联的数据将被推入json对象数组中。我还有一个从数组中删除对象的函数。我想要发生的是如果按下行中的另一个按钮,不仅会删除json数组中的数据,而且还会将THAT按钮中的数据加载到其位置。到目前为止,我无法完成这项工作。

HTML:

<div class="form-horizontal"
data-ng-repeat="item in event.Events track by $index">
    <div class="col-xs-12 col-md-6 col-lg-6">
        <button type="button"
        class="btn form-control"
        data-ng-class="[pickChosen == 1 ? 'btn-success' : 'btn-default']"
        data-ng-click="buttonToggle($index, 1); makePick(item.EventId, event.MemberId, item.AwayId)">
        </button>
    </div>
    <div class="col-xs-12 col-md-6 col-lg-6">
        <button type="button"
        class="btn form-control"
        data-ng-class="[pickChosen == 2 ? 'btn-success' : 'btn-default']"
        data-ng-click="buttonToggle($index, 2); makePick(item.EventId, event.MemberId, item.HomeId)">
        </button>
    </div>
</div>

角:

var picks = $scope.picks = [];

$scope.buttonToggle = function(index, buttonNumber) {
        this.pickChosen = buttonNumber === this.pickChosen ? 0 &
        $scope.removePick(index) : buttonNumber;
    };

$scope.makePick = function (eventId, memberId, teamId) {
        picks.push({ "EventId": eventId, "MemberId": memberId, "TeamId": teamId });
    };

    $scope.removePick = function(index) {
        picks.splice(index, 1);

现在,如果我单击一个不同的按钮,新对象将添加到数组中,但旧对象不会被删除。我想知道是否有人可以帮助解决方案。感谢。

0 个答案:

没有答案