我如何在所选选项中取名

时间:2013-09-25 14:51:36

标签: forms angularjs

当我选择其中一个选项时,我希望在选择输入表单中显示名称。 我创建了这样的选择:

<select ng-model="electionEventId" ng-options="option.value as option.name for option in electionEvents">
</select>

我用{{electionEventId}}捕获所选项目值,但我也想要这个选举的名称而没有意识到另一个请求。 ¿任何人都可以帮助我?

由于

2 个答案:

答案 0 :(得分:3)

您可以绑定模型中的整个对象:

<select ng-model="electionEvent" ng-options="option as option.name for option in electionEvents">
</select>

答案 1 :(得分:0)

与其他答案相比,我的答案似乎有点过于冗长,但我希望它有所帮助!

我相信您必须遍历electionEvents寻找value属性等于electionEventId的选项。

例如,将此功能添加到您的控制器:

$scope.getElectionEventName = function() {
  var name;
  angular.forEach( $scope.electionEvents, function( option ) {
    // Don't process if the name has already been found
    name != null && return;

    if ( option.value === $scope.electionEventId ) {
      name = option.name;
    }
  });

  return name;
};

我没有测试过,但我确信它有效! Unfortunately there's no how to break the loop,所以我把这一行放在循环函数中:)