6

看到这个笨蛋

我想在一个input(用于与 angularui bootstrap typeahead 交互)上使用对象模型。从预先输入的内容中选择某些内容时,它可以完美运行,但在加载时会显示[object Object] 如何获取输入以在加载时显示模型对象的属性?

4

4 回答 4

10

以防万一其他人像我一样降落在这里,[object Object]在某些输入中显示...

在我的例子中,我form使用与模型属性相同的名称来命名元素,如下所示:

<form name="contact">
   <input type="text" ng-model="contact.name" />
   <input type="text" ng-model="contact.email" />
</form>

将表单更改name为其他名称,或更改模型名称。

当 Angular$scope使用与 同名的属性填充 时form,它会覆盖模型实例!

于 2013-10-06T05:20:44.590 回答
0

我也遇到了这个问题,文档没有显示如何挂钩引导updater回调。

我通过将初始值设置为字符串来做到这一点。当您在字段模型中键入时将是一个字符串。当您从下拉列表中选择时,它将是对象

app.controller('MainCtrl', function($scope) {
  $scope.data = [{id:1,name:"google"}, {id:2, name:"microsoft"}];
  $scope.selected = '';


  $scope.$watch('selected',function(newVal,oldVal){    
    if(newVal && angular.isObject($scope.selected)){
      console.log($scope.selected)
    }
  })
});

普朗克

也许有更好的方法使用指令的属性,但不确定那是什么

于 2013-04-12T23:56:58.530 回答
0

事实证明,ui-bootstrap 中目前存在一个错误,该错误已在 master 中修复,并且很快就会出现。我还误解了 ui-bootstrap 构建文件,并且在我的应用程序中包含了模板化和非模板化版本。

我猴子修补了我的 ui-bootstrap 并切换到仅模板化,它现在对我有用。

见谷歌小组讨论

于 2013-04-15T19:14:05.717 回答
-1

Angularjs 表单在表单字段中加载时显示 [object Object]

仅当您的表单名称和 ng-model 名称(值)相同时才会发生

于 2014-12-18T04:37:50.603 回答