如何在 ngRepeat 数组之间推送 AngularJS 中的对象

2024-01-13

所以我是 AngularJS 的新手,我正在尝试构建一个非常简单的列表应用程序,我可以在其中创建一个 ng-repeat 项目列表,然后将选定的项目推送到另一个 ng-repeat 列表中。虽然我的问题看起来很简单,但我还没有找到合适的解决方案。

这是简化的标记:

<body ng-app="MyApp">
 <div id="MyApp" ng-controller="mainController">

    <div id="AddItem">
         <h3>Add Item</h3>

        <input value="1" type="number" placeholder="1" ng-model="itemAmount">
        <input value="" type="text" placeholder="Name of Item" ng-model="itemName">
        <br/>
        <button ng-click="addItem()">Add to list</button>
    </div>
    <!-- begin: LIST OF CHECKED ITEMS -->
    <div id="CheckedList">
         <h3>Checked Items: {{getTotalCheckedItems()}}</h3>

         <h4>Checked:</h4>

        <table>
            <tr ng-repeat="item in checked" class="item-checked">
                <td><b>amount:</b> {{item.amount}} -</td>
                <td><b>name:</b> {{item.name}} -</td>
                <td> 
                   <i>this item is checked!</i>

                </td>
            </tr>
        </table>
    </div>
    <!-- end: LIST OF CHECKED ITEMS -->
    <!-- begin: LIST OF UNCHECKED ITEMS -->
    <div id="UncheckedList">
         <h3>Unchecked Items: {{getTotalItems()}}</h3>

         <h4>Unchecked:</h4>

        <table>
            <tr ng-repeat="item in items" class="item-unchecked">
                <td><b>amount:</b> {{item.amount}} -</td>
                <td><b>name:</b> {{item.name}} -</td>
                <td>
                    <button ng-click="toggleChecked($index)">check item</button>
                </td>
            </tr>
        </table>
    </div>
    <!-- end: LIST OF ITEMS -->
  </div>
</body>

这是我的 AngularJS 脚本:

var app = angular.module("MyApp", []);

app.controller("mainController",

function ($scope) {

// Item List Arrays
$scope.items = [];
$scope.checked = [];

// Add a Item to the list
$scope.addItem = function () {

    $scope.items.push({
        amount: $scope.itemAmount,
        name: $scope.itemName
    });

    // Clear input fields after push
    $scope.itemAmount = "";
    $scope.itemName = "";

};

// Add Item to Checked List and delete from Unchecked List
$scope.toggleChecked = function (item, index) {
    $scope.checked.push(item);
    $scope.items.splice(index, 1);
};

// Get Total Items
$scope.getTotalItems = function () {
    return $scope.items.length;
};

// Get Total Checked Items
$scope.getTotalCheckedItems = function () {
    return $scope.checked.length;
};
});

因此,当我单击按钮时,我的toggleChecked() 函数会触发,并且它实际上会将某些内容推入我的已检查列表中。然而,它似乎只是一个空物体。该函数无法获取我想要推送的实际项目。

我在这里做错了什么?

注意:旨在通过单击按钮来检查项目。在这种情况下我不想使用复选框。

您可以在此处查看工作模型:http://jsfiddle.net/7n8NR/1/ http://jsfiddle.net/7n8NR/1/

干杯, 诺曼


将您的方法更改为:

$scope.toggleChecked = function (index) {
    $scope.checked.push($scope.items[index]);
    $scope.items.splice(index, 1);
};

工作演示 http://jsfiddle.net/7n8NR/3/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 ngRepeat 数组之间推送 AngularJS 中的对象 的相关文章

随机推荐

  • 如何使用 jQuery UI 日历/日期选择器显示周而不是日?

    在过去的几个月里 我一直在使用 jQuery UI 日历 日期选择器 并取得了巨大的成功 我收到了一项新要求 允许选择一周 周日至周六 而不是一天 以前有人完成过这个吗 按周而不是按天突出显示 在文本框 标签中显示开始日期和结束日期而不是单
  • 在角度反应形式验证器中使用 google-libphonenumber

    这是使用该库的基本用例 我需要验证该号码是否有效 我用的是有角度的反应形式 https angular io guide reactive forms 自定义验证器 https angular io guide form validatio
  • numpy loadtxt 跳过第一行

    当我尝试使用 numpy 的 loadtxt 函数从 CSV 文件导入数据时 遇到一个小问题 这是我拥有的数据文件类型的示例 将其命名为 datafile1 csv Comment 1 Comment 2 x y z 1 2 3 4 5 6
  • 将异常类型添加到位框架已知异常

    根据文档 位框架中有一些已知的异常类型 https docs bit framework com docs bit server side web api html exceptions https docs bit framework c
  • 修复 WooCommerce 中购物车最大优惠券折扣百分比

    我在 woocommerce 中有一个优惠券代码 XYZ25 其中包含 25 的折扣 最大折扣为 250 卢比 如果用户应用优惠券代码 XYZ 25 获得 25 的折扣 我如何限制用户获得不超过 250 卢比的折扣 自 Woocommerc
  • ajax给出空白响应

    我有一个 xml 内容存储在该位置 http localhost 8080 cleo primer rest elements search uid 1 query facebook
  • 如何在 Eclipse RCP 中实现内容辅助的文档弹出窗口

    我已经实现了自己的编辑器并为其添加了代码完成功能 我的内容助理在源查看器配置中注册 如下所示 public IContentAssistant getContentAssistant ISourceViewer sourceViewer i
  • 谷歌云数据实验室和谷歌云人工智能平台笔记本有什么区别?

    我正在研究建立端到端机器学习管道的最佳方法 并评估数据探索组件选项 我试图找出谷歌云数据实验室和谷歌云人工智能平台笔记本之间的区别 它们似乎都提供类似的功能 因此不确定它们为何存在 或者其中一个是否是另一个的新迭代 如果它们不同 其中一种相
  • TensorFlow - 如何在忽略零权重的情况下计算梯度?

    我想通过将一些权重设置为 0 0 每层中的特定权重 以此处讨论不重要的方式选择 来实现剪枝 以 1 在推理过程中忽略它们 2 在训练过程中忽略它们 我知道我可以在推理过程中忽略它们 方法是对每一层应用一个掩码 其中 1 位于我想要保留的权重
  • iOS 导航状态栏

    谷歌地图已经有一个蓝色栏 只要您在导航中就会出现 我想知道我自己如何实现这一点 有任何想法吗 配置您的应用程序以使用 Core Location在后台 当您请求授权时 正如您现在必须在 iOS 8 中执行的那样 请请求 使用时 授权 每当您
  • Android 光标怎么会处于负数位置?

    在学习迭代游标时 我learned https stackoverflow com questions 10723770 whats the best way to iterate an android cursor我需要首先移动到位置 1
  • 如何在 Laravel 中实现 Gravatar?

    在 Laravel 中实现 Gravatar URL 的最快方法是什么 我有一个必填的电子邮件地址字段 但我不想为 Gravatars 创建新列 并且我更愿意使用本机Auth user 属性 事实证明 您可以使用 Laravel 变异器来创
  • 如何在部署期间配置 Cosmos Db 集合

    使用 Azure 以 GlobalDocumentDB 模式部署 Cosmos Db 数据库时资源管理器模板 https learn microsoft com en us azure templates microsoft documen
  • mysql 根据原始 sql 创建过程的问题

    我正在 Symfony2 中处理一个应用程序项目 通过注册 每个客户端都会创建一个数据库 模式是在客户端登录时由验证服务创建的 该应用程序需要一些数据才能工作 到目前为止 我使用了 ORM 夹具 由于多种原因 我现在需要从夹具加载转向更接近
  • 不区分大小写的正则表达式 - VBA

    Background 刚才我正在回答一个问题 正在玩玩RegEx within VBA 目标是创建字符串中存在的名称列表 RegEx是首选解决方案 因为我们想防止VBA绊倒看起来相似的标点符号和子字符串 例如 Jack or Jacky S
  • 获取另一个 jar 中一个 jar 的文件系统

    这就是我想做的 FileSystem fs1 FileSystems newFileSystem Paths get f1 jar null FileSystem fs2 FileSystems newFileSystem fs1 getP
  • 获取 iframe 标题并在 html 中回显 [重复]

    这个问题在这里已经有答案了 我从地址栏加载我的 iframe src 如下所示 http site com demo php go http google com http site com demo php go http google
  • C++ 父类调用子虚函数

    我想要一个纯虚拟父类来调用函数的子实现 如下所示 class parent public void Read read stuff virtual void Process 0 parent Read Process class child
  • 在单元测试中模拟 python 类并验证实例

    我正在尝试对 SFTP 帮助程序类进行单元测试 该类对 pysftp 模块进行一些调用 我想模拟来自 pysftp 的实际网络调用 这样就不会产生副作用 并且只需确保该类使用正确的参数正确调用底层 SFTP 方法即可 这是到目前为止我的代码
  • 如何在 ngRepeat 数组之间推送 AngularJS 中的对象

    所以我是 AngularJS 的新手 我正在尝试构建一个非常简单的列表应用程序 我可以在其中创建一个 ng repeat 项目列表 然后将选定的项目推送到另一个 ng repeat 列表中 虽然我的问题看起来很简单 但我还没有找到合适的解决