我有一個這樣的形式:伍模型更新不及時的值在控制器
<form name="UserForm" class="form-horizontal" ng-submit="setUser()" >
<input id="firstname" name="firstname" type="text" placeholder="add a firstname.." class="form-control input-md" ng-model="user.firstname" required>
<button id="Submit" name="Submit" class="btn btn-primary" ng-click="showMessage = 'false'" ng-disabled="UserForm.$invalid">Save</button>
</form>
,並在我的控制器:
customModule2.controller('UserController',function ($state, $stateParams, $location, $log,$http, $scope, userFactory , appSettings) {
$scope.user = {};
$scope.setUser = function() {
if($scope.UserForm.$valid) {
userFactory.addUser($scope.user)
.success(function (data) {
console.log("controller set : " + this.user.firstname);
$scope.addMessage = data;
$log.log('');
})
.error(function (data, status) {
console.log("user firstname : " + $scope.user.firstname);
});
$scope.UserForm.$setPristine();
}
};
)};
現在,當我輸入名字我可以看到它是添加,但是當我檢查控制檯時,控制器中的值爲空。
任何幫助將是appreciated.thanks
編輯:
我有這樣的控制器,它幾乎是相同的代碼,它工作得很好:
customModule2.controller('ProjectController',function ($state, $stateParams, $location, $log,$http, $scope, projectFactory , appSettings) {
$scope.project = {};
$scope.setProject = function() {
if($scope.ProjectForm.$valid) {
projectFactory.addProject($scope.project)
.success(function (data) {
$scope.addMessage = data;
console.log('here' + $scope.project.name);
})
.error(function (data, status) {
$scope.addMessage = "Erreur lors de l'ajout : " + data + ' ' + status;
console.log('here');
$log.log(data.error + '' + status);
});
$scope.showMessage = true;
$scope.ProjectForm.$setPristine();
}
};
難道是一個$scope
問題?
您正在記錄user.cin而不是user.firstname –
您提供的代碼中存在語法錯誤。你確定這是你的代碼嗎? –
是的,這是我的代碼,我已經更新了代碼,「這是一個片段」 –