Angular.js:在 ng-repeat 中使用 ng-model 进行下拉菜单

2024-04-07

我很难理解如何在 ng-repeat 中使用 ng-model。 在此上下文中,CargoItems 是具有 LoadPoint 的对象的列表。 LoadPoint 具有 Id 和 Text 属性。

我想显示绑定到下拉列表中当前选择的文本,但我当然也想跟踪选择了哪个 Id。所以我不确定如何使用 select 绑定更新这两个属性,无论是通过显式使用标签,还是使用我还没有真正弄清楚的 ng-options 。

那么两个问题:

1) 如何正确地将选择列表中的文本和值绑定到 CargoItem.LoadPoint 上的 Id 和 Text 属性?我有一种感觉我的 ng-model 可能是错误的?

2)如何使用 ng-options 默认为所选值?我想出了编写我自己的选项标签的方法,但如果可能的话我想使用 ng-options 。

<div ng-repeat="cargoItem in cargo.CargoItems">
    <span>Selected Load Point: {{cargo.LoadPoint.Text}}</span> 
    <select ng-model="cargoItem.LoadPoint" ng-options="loadPoint.Id as loadPoint.Text for loadPoint in LoadPoints"></select>
</div>

提前致谢!


  1. 绑定到整个对象引用,而不是使用“Id”属性(loadPoint.Id)。为此,只需更改ng-options并删除loadPoint.Id as part:

    <select ng-model="cargoItem.LoadPoint" ng-options="loadPoint.Text for loadPoint in LoadPoints"></select>
    
  2. 如果您使用上述方法并正确引用 LoadPoints 对象,Angular 会自动为您执行此操作。以下是有关如何使用直接 LoadPoints 对象引用的示例:

    $scope.LoadPoints = [{ Id: '1', Text: 'loadPointA' },{ Id: '2', Text: 'loadPointB' }];        
    $scope.cargo = {
        CargoItems: [{
            LoadPoint: $scope.LoadPoints[0]
        }, {
            LoadPoint: $scope.LoadPoints[1]
        }]
    };
    

    使用这种方法,cargoItem.LoadPoint(ngModel)将始终保存对整个 LoadPoints 对象的引用(即{ Id: '1', Text: 'loadPointA' }),而不仅仅是它的 ID(即'1').

jsFiddle: http://jsfiddle.net/bmleite/baRb5/ http://jsfiddle.net/bmleite/baRb5/

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

Angular.js:在 ng-repeat 中使用 ng-model 进行下拉菜单 的相关文章

  • 在 angularjs 中的某些字段上设置条件焦点[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 您好 所有工程师同事 我看到了很多问题 并提出了关于将焦点设置在某些输入字段上的答案 但我没有找到任何可以满足我的要求的
  • UI 路由器和查询参数

    我使用 Angular UI Router 和 Elasticsearch 构建了一个小型搜索应用程序 并尝试在结果页面的 url 中获取 UI Router 查询参数 我正在努力实现这个目标 domain com search user
  • AngularJS 服务并承诺最佳实践

    我有一个 AngularJS 应用程序services 调用 http资源并返回promise我在控制器中解决了这个问题 这是我正在做的事情的示例 app service Blog function http q var deferred
  • 在 Protractor / Webdriver 中等待页面重定向

    我有一个测试 单击按钮并重定向到用户仪表板 当发生这种情况时 Webdriver 返回 javascript error document unloaded while waiting for result 为了解决这个问题 我插入brow
  • AngularJS 和 Apiary.IO - 无法读取任何响应标头?

    我使用 Apiary io 模拟我的 API 但不知怎的 我无法使用 angularJS 从响应对象中读取任何标头 我确信我至少通过检查 firebug 正确设置了 Content Type application json Angular
  • 具有 Angular 前端的简单 Django Rest Framework 应用程序会发生什么?

    我学习 Django 一段时间了 我发现这张图片很有帮助 我现在正在深入研究 Angular JS 我试图弄清楚每个组件 指令 控制器和服务 如何交互以及是否存在类似的 循环 这blog http kirkbushell me when t
  • 如何从 Chrome 控制台访问 Angular 中的 $scope 变量

    如何从 chrome 控制台访问范围变量小部件 function MyCntrl scope scope widgets text Widget 1 datarow 1 datacol 1 datasizex 3 datasizey 3 t
  • 使用 Angularjs 中的指令创建 ajax 加载微调器

    我正在尝试创建一个简单的加载程序 以下是我到目前为止所做的事情 有人可以看一下并让我知道我哪里出错了吗 出现CSS样式loading style 2没有被添加 我的 DOM 只显示 span class span 我的指令 angular
  • Material Design Lite 与 AngularJS 的集成 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我知道角材料 https github com angular material这有助于实现在 Angular 单页应用程序中使用的 Mater
  • 如何正确地将代码从angularjs迁移到reactjs

    我正在尝试将代码从 Angular 迁移到 React 不确定这是否正确 只是需要一些帮助 看看我是否朝着正确的方向前进 我不知道角度 所以我很困惑 文本数据 是否类似于反应中的状态 我是否必须在顶部的状态中声明它 角度代码 scope t
  • 错误 11 秒后等待 Protractor 与页面同步超时

    我的量角器测试有问题 我的角度应用程序使用 timeout 不断从服务器轮询某些内容 不幸的是 当我运行测试时 这会导致以下错误消息 There was a webdriver error Error Timed out waiting f
  • 使用 Angular ui-router 基于状态参数加载控制器

    我正在尝试加载基于状态参数的控制器以使其可重用 state dashboard item detail url detailId detailId detailName detailName views main templateUrl f
  • 如何在AngularJS中的控制器之间共享数据

    我目前正在尝试学习 angularJS 但在控制器之间访问数据时遇到问题 我的第一个控制器从我的 api 中提取货币列表并将其分配给 scope currencies 当我单击编辑时 应该发生的情况是它切换使用另一个控制器的视图 现在 当使
  • 模型不是 AngularJS 中输入的日期对象

    使用 AngularJS 我试图使用输入显示日期type date
  • AngularJS - 服务、工厂、过滤器等中的依赖注入

    因此 我想在我的 Angular 应用程序中使用一些插件和库 目前 我只是引用这些函数 方法 因为它们是在 99 的应用程序中以完全忽略依赖注入的方式使用的 我有 例如 javascript 库 MomentJS 它处理格式化和验证日期 并
  • AngularJS:在部分视图出现之前触发 $viewContentLoaded

    对于部分视图 我想做一些我通常会做的 JavaScript 事情 document ready function 例如将 venet 侦听器绑定到元素 我知道这对于 AngularJS 和加载到 根 视图中的部分视图不起作用 因此 我向控制
  • AngularJS - RouteProvider 解析调用服务方法

    我创建了一项检查用户登录状态的服务 如果令牌存在 则登录用户 否则重定向到登录页面 最初我通过routeProvider解析调用了这个服务 这一次就可以完美工作 但是由于Angularjs服务是单例的 因此测试不会针对连续调用运行 然后 我
  • Angular js 服务器端过滤器和分页

    我有几个输入字段 我们可以使用带有搜索名称的输入字段作为示例 当有人在该字段中输入内容时 我希望能够过滤对象的结果 但我想做过滤器服务器端而不是客户端 我有一个包含大量记录的数据库 因此我不想返回所有记录并在客户端进行过滤 这确实会减慢速度
  • 使用 Spring 和 Angular 进行 Html5 路由

    我正在尝试使用 Spring boot 和 Angular 1 5 实现 HTML5 路由 如下本文 https spring io blog 2015 05 13 modularizing the client angular js an
  • 如何使用 htaccess 将所有请求重定向到反应或角度索引?

    我正在使用react router 在react 中创建一个应用程序 早些时候 我对 Angular 做了同样的事情 但在这两种情况下 如果用户为 URL 添加书签并直接加载它 它将显示 404 错误 我们可以在 htaccess 中创建这

随机推荐

  • 如何配置 PHP 显示详细错误而不是错误 500 页面?

    我在 IIS 托管上部署了一个 PHP 应用程序 并且总是收到通用 IIS 错误 500 页面 而不是详细的错误页面 我知道我需要修改一些 php ini 文件 来自this https stackoverflow com question
  • 如何对项目的 cron 作业进行版本控制? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我有一堆项目 我用 git 和 fab 推送到服务器 它们是 Django 站点的负载 其中一些站点有 cron 作业 我希望处于这样的境地 通
  • 单击浏览器停止按钮时执行操作

    如果这太简单了 我们深表歉意 我是 JQuery 新手 我搜索并发现了类似的问题this https stackoverflow com questions 11220581 jquery browsers stop button even
  • iOS 和 Android 中的照片库

    我正在开发一个用于移动设备运行的应用程序iOS and Android我在访问时遇到一些困难image gallery的设备与Qml 我需要在一个中列出图片库中的图像GridView 我尝试使用返回图片文件夹QStandardPaths但它
  • (Beautiful Soup) 获取按钮标签内的数据

    我尝试在按钮标签内刮出 ImageId 想要得到结果 25511e1fd64e99acd991a22d6c2d6b6c 当我尝试时 drawing url drawing url find all button class inspectB
  • keydown 事件上的 jQuery 触发器()和 stopPropagation()

    我在按键和停止传播方面遇到了困难 我不想刷新我的页面 我已经尝试了我能想到的所有方法 我当前的代码是 知道我在这里做错了什么吗 我认为事件被正确调用 我有 jquery 和 jquery ui 正确链接并且没有收到控制台错误 UPDATE好
  • ggplot2 中的对数色标会压缩某些图例数字

    我正在尝试创建一个类似于以下问题和回答的情节 ggplot2 中有没有内置的方法可以进行对数色标 https stackoverflow com questions 8069837 is there a built in way to do
  • 如何获取网页的公钥?

    如何获取 VeriSign 等网站以及使用 https 安全协议 的所有其他网站的公钥 这取决于您使用的浏览器 如果您让我知道 我会更新我的答案 Chrome 55 及以上您现在可以在开发人员工具中找到此信息 选项 3 个点 gt 更多工具
  • 为什么必须从继承的类中重新声明虚函数?

    我正在开发一个简单的 C 程序 但很难理解我遇到的编译器错误 该问题是由我尝试从基类创建派生类引起的 我在下面发布了具有相同结构的代码 但更改了名称 基类 h ifndef BASECLASS H define BASECLASS H cl
  • 如何以编程方式获取运行 Android 7.0 的设备中已安装的浏览器应用程序的列表?

    在 Android 7 0 之前 我能够检索已安装的浏览器类型应用程序的列表及其包名称 然后 我升级到 Android 7 0 只能检索三星的互联网浏览器 而不能检索其他浏览器类型的应用程序 例如 Chrome Device 三星 Tab
  • 编译时模板参数计算

    我试图在编译时推断两个模板参数中较大的一个 两个模板参数的类型都是 size t 我有一个模板化类型 SomeType 它采用 size t 作为模板参数 然后 我有一个函数 它采用两个具有不同模板 size t 的 SomeType 参数
  • 如何将 HSQL(基于文件)与我的 Android 应用程序连接?

    您好 我在将 Android 应用程序连接到 HSQLDB 时遇到问题 第一个问题 我应该使用 HSQLDB 的特定 android jar 吗 或者我可以使用任何 HSQL jar 吗 第二个问题 如果我可以使用提供的罐子 我如何才能使连
  • Spring Boot锁定代码以获取唯一id

    我编写了一个必须返回唯一字符串的控制器 要求是该控制器的两次调用永远不会返回相同的字符串 即使经过多年 即使代码将扩展到更多虚拟机 我的问题是以下代码是否正确地实现了声明的目的 或者您是否有任何提示 控制器 RestController p
  • EntityManager 注入导致 NullPointerException

    我正在编写我的第一个 Java EE EJB Servlet 等 应用程序 请注意 我正在使用 Eclipse 我遇到了 EntityManager 注入不起作用的问题 并且由于我的 Java EE 以及一般的 Java 新手 很难找到原因
  • 将特征限制在对象上?

    有没有办法限制一个特征 使其只能混合到对象中 例如 trait OnlyForObjects this gt object Foo extends OnlyForObjects gt OK class Bar extends OnlyFor
  • Angular 路由器 URL 编码特殊字符和浏览器行为

    我只是想不出解决这个问题的办法 我正在设计搜索引擎 我想在 url 中显示用户试图查找的内容 如下所示 https my site com search query 28rockstar search true page 0 用户正在尝试寻
  • 如何为成员使用非默认构造函数?

    我有两节课 class a public a int i class b public b Gives me an error here because it tries to find constructor a a a aInstanc
  • MySQL ONLY IN() 等效子句

    我在这里给出了我的问题的一个非常抽象的版本 所以请耐心等待 我有一个查询将检查特定主体是否具有相同类型的某些多个参数 例如 一个男孩对于巧克力有多种选择 但是 我想从桌子上选择那些拥有我提到的巧克力的男孩 不多不少 也不是 LIKE 或 I
  • 如何从 void 函数返回数据?

    大约一周前 我问了一个有关 activex 和 UDP 的问题 这里是 C UDP Socket 客户端和服务器 https stackoverflow com questions 19786668 c sharp udp socket c
  • Angular.js:在 ng-repeat 中使用 ng-model 进行下拉菜单

    我很难理解如何在 ng repeat 中使用 ng model 在此上下文中 CargoItems 是具有 LoadPoint 的对象的列表 LoadPoint 具有 Id 和 Text 属性 我想显示绑定到下拉列表中当前选择的文本 但我当