我遇到有关AngularJS的问题,我无法从输入字段中获取数据。
这是我的HTML输入字段:
<input ng-model="dnameform" ng-init="dnameform=user.user_displayname" type="text">
这就是我在JavaScript上检索数据的方式:
$scope.dnameform
答案 0 :(得分:0)
在这种ng-init
中,如果从user
服务调用中加载API
对象,则ng-init
指令将在此之前触发。因此,dnameform
的值将始终为undefined
。
相反,我认为您应该像在user.user_displayname
中一样直接使用ng-model
,而无需创建新的ng-model
变量。
<input ng-model="user.user_displayname" type="text">
在任何需要值的地方,都可以直接使用$scope.user.user_displayname
OR
当用户API服务调用结束时,您可以从控制器分配dnameform
变量。然后,您可以像在dnameform
的输入字段中那样ng-model
,而无需使用ng-init
。
apiService.getUser().then(function(res){
$scope.user = res.data
$scope.dnameform = user.user_displayname;
})
答案 1 :(得分:0)
将模型用作对象,然后像在控制器中初始化
$scope.formData = {dnameform:""}
有时,如果未将范围变量值定义为对象,我们将无法获得范围变量值... angularjs的缺点