我正在使用角度材质来显示模态对话框。但我面临着将输入字段值输入控制器的问题。
console.log($scope.aadharNumber);
在控制台中,我收到“未定义”消息。
$scope.showModal = function(viewName, ev) {
$mdDialog.show({
controller: DialogController,
templateUrl: 'views/'+viewName,
targetEvent: ev,
scope: $scope
})
.then(function(modal) {
});
};
<md-input-container>
<md-icon md-svg-src="img/icons/ic_email_24px.svg" class=""></md-icon>
<input ng-model="aadharNumber" name="aadharno" type="text" placeholder="AADHAAR Number" required style="text-align:left">
</div>
</md-input-container>
答案 0 :(得分:0)
首先尝试在控制器中定义变量“aadharNumber”。
$scope.aadharNumber = "";
然后在你看来放:(和以前一样)
<input ng-model="aadharNumber" name="aadharno" type="text" placeholder="AADHAAR Number" required style="text-align:left">
编辑: 像迪米特里斯说的那样。我忘了提到你可以用Angular观察变量。这是某种“改变”。
这是他的代码:
$scope.$watch($scope.aadharNumber,function(){
console.log("$scope.aadharNumber has changed into: " + $scope.aadharNumber);
})
答案 1 :(得分:0)
它未定义,因为它没有在控制器中定义。如果您想查看更改,可以使用$watch
获取控制器中模型的更新值。
$scope.$watch('aadharNumber',function(){
console.log($scope.aadharNumber);
})
答案 2 :(得分:0)
Jelmer的答案几乎就在那里,但我认为完全正确的方法是到目前为止给出的答案组合
在控制器中初始化你的ng模型
$scope.aadharNumber = "";
然后在视图中保留它:
<md-input-container>
<md-icon md-svg-src="img/icons/ic_email_24px.svg" class=""></md-icon>
<input ng-model="aadharNumber" name="aadharno" type="text" placeholder="AADHAAR Number" required style="text-align:left">
</div>
</md-input-container>
如果你想从输入中获取值(我很确定你这样做),那么你必须确实使用$ watch作为shushanth p说:
$scope.$watch($scope.aadharNumber,function(){
console.log("$scope.aadharNumber has changed into: " + $scope.aadharNumber);
})