javascript - 如何在angularjs中将数据从列表框添加到列表框

标签 javascript jquery html angularjs

我正在 angularjs 中创建一个应用程序,我想将值从 listbox1 添加到 listbox2。

当我单击任何 li 选项卡时,我会获取该 li 的值,但是当我尝试将该值插入其他列表框时,它不会显示。

请帮助我..

感谢先进

链接:- http://plnkr.co/edit/jZeeyFmjIlcsasyL9CzC?p=preview

var App = angular.module('myApp', ['ngDragDrop']);
App.controller('OverviewCtrl', function ($scope) {
    $scope.list2 = [
        {'title': 'Item 1'},
        {'title': 'Item 2'},
        {'title': 'Item 7'},
        {'title': 'Item 8'}
    ];
    $scope.list1 = [
        {'title': 'Item 1'},
        {'title': 'Item 2'},
        {'title': 'Item 3'},
        {'title': 'Item 4'},
        {'title': 'Item 5'},
        {'title': 'Item 6'},
        {'title': 'Item 7'},
        {'title': 'Item 8'}
    ];
    $scope.toggle = function(test,$scope){
       // alert(test)
        $scope.list2.push($scope.list2.title.test);
    }
});

HTML 代码:-

 <div class="row" ng-controller="OverviewCtrl">
    <div class="col-md-5" > 
        <div class="panel panel-default">
            <div class="panel-heading"><h4>List 1</h4></div>
            <div class="panel-body">
                <ul class="list-group">
                    <li class="list-group-item" ng-repeat="item in list1" ng-click="toggle(item.title)" >{{item.title}}</li>
                </ul>
            </div>
        </div>

    </div>
    <div class="col-md-2" style="text-align: center"> 
        <button type="button" class="btn btn-success"  style="margin-top: 70px; margin-bottom: 10px">
            <span class="glyphicon glyphicon-triangle-right btn-sm" aria-hidden="true"></span>
        </button>
        </br>
        <button type="button" class="btn btn-success"  style="margin-top: 10px; margin-bottom: 10px">
            <span class="glyphicon glyphicon-triangle-left btn-sm" aria-hidden="true"></span>
        </button>
    </div>
    <div class="col-md-5">
        <div class="panel panel-default">
            <div class="panel-heading"><h4>List 2</h4></div>
            <div class="panel-body">
                <ul class="list-group">
                   <li class="list-group-item" ng-repeat="item in list2" >{{item.title}}</li>
                </ul>
            </div>
        </div>
    </div>
</div>

最佳答案

它不起作用,因为您没有复制列表中的对象。 list2.title 没有意义,因为 list2 是一个数组。这样会更合理:

$scope.toggle = function(item){
    $scope.list2.push(item);
}

并将调用 toggle 的方式更改为:

ng-click="toggle(item)"

顺便说一句,我必须指出 toggle 只是添加到 list2 但不会从 list1 中删除,这可能不是您的目标行为。

关于javascript - 如何在angularjs中将数据从列表框添加到列表框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32178786/

相关文章:

javascript - 将scrollTop转换为增量值

javascript - 如何禁用 TestCafe cookie 处理机制以允许默认浏览器 document.cookie 列表?

javascript - 禁用表单提交按钮但发布按钮值

asp.net - 无法选择网页中的文本

html - Erb:如何让一个 block 水平重复?

html - 悬停 div 以显示另一个 div

javascript - jQuery 选择器 - 仅向选定的 id 插入值

javascript - 未登录用户的“登录”值和登录用户的 'Log Out' 值

javascript - 从日期选择器中选择多个随机日期?

jquery - ASP.NET MVC 4 - 客户端验证不起作用