4

我有一个具有“高度”属性的模型,我希望允许用户将其编辑为两个单独的字段,“英尺”和“英寸”,但让它们映射到以英寸为单位的单个属性“高度”。

表单如下所示:

在这些字段和单个“高度”属性之间创建双向绑定的最佳方法是什么?

4

2 回答 2

3

我稍微修改了@Mark 的例子,去掉了$watch,我认为它是多余的

HTML

<input type="number" ng-model="calc.feet">
<input type="number" ng-model="calc.inches">
<br>{{calc.height()}}

控制器

$scope.calc = {
  feet: 2,
  inches: 5,
  height: function () { return this.feet * 12 + this.inches }
};

Plunkr

于 2013-01-31T04:56:19.833 回答
3

HTML:

<input type="number" ng-model="feet">
<input type="number" ng-model="inches">
<br>{{height}}

控制器:

$scope.feet = 2;
$scope.inches = 5;
$scope.$watch('feet * 12 + inches', function(value){
  $scope.height = value;
})

PLNKR

于 2013-01-31T04:05:00.933 回答