Ng模型覆盖了我在AngularJS的输入字段中输入的任何值
Angular ng模型覆盖了我放入输入或textarea值字段中的任何值或表达式。如果我删除ng模型一切正常,但只要我添加ng模型,它使该字段为空..我试图使用控制器的一些值填充ng模型,但它不起作用..Ng模型覆盖了我在AngularJS的输入字段中输入的任何值
<input type="text" ng-model="note.title" value="{{title}}"> <textarea ng-model="note.notes">{{notes}}</textarea>
尽管表达式值在元素检查器中正确呈现并存在,但如果模型存在,视图将显示空白表单,否则将显示正确的值。
回答:
HTML代码复制
<form action="update.php" ng-controller="EditController" method="post" id="UpdateForm"> <input type="text" value="{{title}}">
<textarea>{{notes}}</textarea>
<input type="submit" value="Submit">
</form>
JavaScript代码
var notesId = $routeParams.notesId; $scope.editNotes = function() {
$http.post('www/edit.php', notesId)
.success(function(data) {
$scope.allNotes = data;
//here i updated value
$scope.notes = $scope.allNotes[0].text_notes;
$scope.title = $scope.allNotes[0].notes_title;
});
};
$scope.editNotes();
的的$scope.notes
& $scope.title
值是我想要的东西在表单字段值显示,因为我更新一些东西&我不希望我的用户从头开始。
回答:
这是一个sample JSFiddle使用您的代码作为基础和扩展它。希望这可以帮助。您会注意到我添加了“错误”处理程序,仅仅是因为我没有使用可用的服务。您可以将相同的逻辑复制到“成功”功能,以便表单在您从服务获得成功响应后得到更新。
基本上,样本HTML:
<div ng-app> <form action="update.php" ng-controller="EditController" method="post" id="UpdateForm">
<input type="text" ng-model="notes.title" value="{{title}}">
<textarea ng-model="notes.notes">{{notes}}</textarea>
<input type="submit" value="Submit">
</form>
</div>
和JavaScript示例:
function EditController($scope, $http){ var notesId = 5;
$scope.editNotes = function() {
$http.post('www/edit.php',notesId)
.success(function(data){
$scope.allNotes = data;
$scope.notes = $scope.allNotes[0].notes_title;
$scope.title = $scope.allNotes[0].notes_title;
})
.error(function(data){
$scope.notes = {title: "title", notes: "notes"};
})
};
$scope.editNotes();
}
回答:
你不需要,当您使用NG-模型,以指定value属性。只需将值指定给您在ng模型中指定的变量,它将自动填充输入字段。
试试这个:“笔记”
<form action="update.php" ng-controller="EditController" method="post" id="UpdateForm"> <input type="text" data-ng-model="title" />
<textarea data-ng-model="notes"></textarea>
<input type="submit" value="Submit">
</form>
我在你的代码注意到您在使用它与但你还没有指定控制器别名,如果你想以这种方式使用试试这个:
<form action="update.php" ng-controller="EditController as notes" method="post" id="UpdateForm"> <input type="text" data-ng-model="notes.title" />
<textarea data-ng-model="notes.notes"></textarea>
<input type="submit" value="Submit">
</form>
以上是 Ng模型覆盖了我在AngularJS的输入字段中输入的任何值 的全部内容, 来源链接: utcz.com/qa/257913.html