下面是我的查看页面
<form name="form">
<label>Name</label>
<input name="name" type="text" ng-model='user.name' ng-value='emp.name' required />
<span ng-show="form.name.$touched && form.name.$invalid">Name is required</span>
<button ng-disabled="form.name.$touched && form.name.$invalid" ng-click='formUpdate()'>Update</button>
</form>
这是我的 Controller
$scope.formUpdate = function() {
$scope.status = false;
$http({
method : 'POST',
url : 'model/update.php',
data : $scope.user ,
headers : {'Content-Type': 'application/x-www-form-urlencoded'}
}).then(function mySuccess(response) {
$scope.update = response.data;
console.log(response.data);
}, function myError(response) {
$scope.update = response.statusText;
});
};
当我在 HTTP 调用中使用数据:$scope.user
时,我在控制台上得到空白值,但如果我使用数据:$scope.emp
,则我从来没有获得输入字段的更新值,而是获得输入字段的旧值。
最佳答案
ng-value
将给定表达式绑定(bind)到元素的值。
据我了解您的问题,您正在尝试将输入值初始化为emp.name
。
您应该将输入更改为:
<input type="text" ng-model='user.name' ng-init='user.name = emp.name' required />
关于javascript - ng-model 不能与 AngularJS 中的 ng-value 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42952606/