发表于: 2017-03-04 23:58:40

1 1088


今天做的事

公司新增页面的部分内容以及新增职位的tags部分

明天计划

完善新增职位页面和晚上学习下小直播

收获以及困惑

tags部分,过来的是一数组,在职位编辑现实的是复选框

这个地方略麻烦,请求过来的是这么一东西

"tags":[{"tag":"福利好"},{"tag":"996"}]

然后过来以后据此来生成复选框,value为过来的内容,然而实际上没有做到

于是上网去找了一个复选框的demo


<div ng-repeat="tag in tags.content track by $index ">

        <input type="checkbox"

               title="标签"

               class="btn "

               id="{{tag.id}}"

               name="{{tag.name}}"

               ng-checked="isSelected(tag.id)" //动态 true false

               ng-click="updateSelection($event,tag.id)" //将id添加到Array中

               ng-model="tags">

        {{tag.name}}

</div>

 $scope.selected = [];

    $scope.selectedTags = [];

    //实际操作数组的方法

    var updateSelected = function (action, id, name) {

        if (action == 'add' && $scope.selected.indexOf(id) == -1) {

            $scope.selected.push(id);

            $scope.selectedTags.push(name);

        }

        if (action == 'remove' && $scope.selected.indexOf(id) != -1) {

            var idx = $scope.selected.indexOf(id);

            $scope.selected.splice(idx, 1);

            $scope.selectedTags.splice(idx, 1);

        }

        console.log($scope.selected);

    };

    //根据传入的动作和要操作的id更新Array

    $scope.updateSelection = function ($event, id) {

        var checkbox = $event.target;

        var action = (checkbox.checked ? 'add' : 'remove');

        updateSelected(action, id, checkbox.name);

    };

    //返回true false

    $scope.isSelected = function (id) {

        return $scope.selected.indexOf(id) >= 0;

    };



而后又想,其实也不一定要用复选框来做啊,我直接根据这个数组生成一堆span

然后点击ng-class来判定好像也能达到需求啊

所以这样一来也灭那么麻烦了


返回列表 返回列表
评论

    分享到