我使用的是 angularjs v1.0.7。我有一个隐藏的表单字段,它的值与其他输入值相关。在 http://jsfiddle.net/4ANaK/例如,当我在文本输入字段中键入时,隐藏字段不会更新。
<div ng-controller="MyCtrl">
<form ng-submit="action()">
name:<input ng-model="name" type="text" value="you name">
<input ng-model="nice_name" type="hidden" value="Mr {{name}}" >
<input type="submit">
</form>
</div>
var app=angular.module('myApp', []);
function MyCtrl($scope) {
$scope.name = "David";
$scope.action = function(){
alert($scope.nice_name);
}
}
如何解决这个问题?
最佳答案
尝试 1
将此添加到您的 Controller 可以解决您的 fiddle 问题。它也能解决您的实际问题吗?
$scope.$watch('name', function (value) {
$scope.nice_name = 'Mr ' + value;
});
尝试 2
好吧,那这个呢?这纯粹是在 View 中完成的。
<input ... ng-change="nice_name = 'Mr ' + name" ng-init="nice_name = 'Mr ' + name">
编辑
看起来 ng-init
不是必需的。
关于javascript - Angularjs 中的隐藏输入字段未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18526010/