【问题标题】:AngularJS - missing ng-model items in $scope objectAngularJS - $scope 对象中缺少 ng-model 项
【发布时间】:2014-03-11 14:18:11
【问题描述】:

我正在尝试创建一个表格,您可以在其中编辑每一行并保存您的更改。按保存后,我无法发布行中的所有项目。出于某种原因,只发送了一些元素。任何帮助或见解将不胜感激。

这是我的code的一个小插曲

我在开发工具中查看了控制台,看起来 $scope.editedEvent 对象(app.js 中的第 12 行)包含未定义的参数,除了“名称”。

【问题讨论】:

  • 你能解释一下你想要达到的目标吗?另外,我认为您对角度的工作方式感到困惑。 ng-model 是双向数据绑定,您不能将 ng-model 放入标签中并插入一些值。您通常使用 ng-bind 或 {{}} 作为标签,使用 ng-model 作为输入字段。

标签: javascript forms angularjs


【解决方案1】:

正如我在评论中所说,您不能将 ng-model 和 ng-bind(或 {{}} )放在同一个元素中。 ng-model 用于输入类型字段(input、select、textarea...),ng-bind 用于 span、div 等。

因此,根据我从您的问题中了解到的情况,我更新了代码以使其“符合角度”,当您单击保存按钮时,它将使用该行的内容和从选择中选择的值。

plunkr

【讨论】:

  • 非常感谢!我不知道您不能将 ng-model 和 {{}} 放在同一个元素中。这是final code
【解决方案2】:

是否只发送姓名和距离?然后查看您的 convertEvent 函数……您正在创建一个带有 to 字段的新对象:namedistance
问候

【讨论】:

    【解决方案3】:

    这是一个带有一些更正的分叉,以实现我认为您正在寻找的内容:

    http://plnkr.co/edit/HTERoyQnP2YQfjnjUVb7

    在设置editedEvent 对象以使用范围变量时,您将这些值绑定到这些变量,以便它们保持同步。正因为如此,editedEvent 对象在您保存时正在从您下方更改(所有内容都设置回未定义,为新的“编辑”状态做好准备)。只需创建一个空白的 editedEvent 对象,Angular 就会使用 hg-model 来填充这些对象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-26
      • 1970-01-01
      • 2015-03-08
      • 1970-01-01
      • 2016-04-26
      • 2016-02-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多