У меня есть запись в формате json data form, и я хочу изменить эту форму onclick, я не могу заполнить свои старые данные в форме, чтобы отредактировать ее.
<button style="margin:3px;" ng-click="put1(student)" onclick="opendiv();">Edit</button>
Здесь студент - это массив, и opendiv - открыть диалоговое окно модели.
self.put1 = function(student){
var studentname = student.name;
var studentid = student.id;
var studenttype = student.type;
var data = { studentname : self.newstudent.name,
studentid = self.newstudent.id ,
studenttype =self.newstudent.type
}
$http.put('/rest/student',data)
.success(function(data){
alert("updated"); })
.error(function(errResponse) {
console.error('Error while fetching notes');
});
};
Что вы имеете в виду со старыми данными, когда говорите: "Я не могу заполнить свои старые данные"?!
Если вы ссылаетесь на данные о студентах как на старые данные, убедитесь, что вы правильно привязываете данные учащихся к вашим элементам ввода вашей формы, используя директиву ng-model, если вы хотите использовать AngularJS.
Мой совет:
Используйте $ scope или директиву $ rootScope, чтобы сохранить данные вашего ученика на угловом контроллере, например "$ scope.student".
Используйте директиву ng-model, чтобы отобразить список ваших учеников на вид, подобный этому.
<form name="studentForm"> <input type="text" ng-model="student.name"/> <button ng-click="edit();">Edit</button> </form>
.
ng-model = "student.name" покажет вам старое имя студента, поэтому вы можете его отредактировать.
В угловом контроллере реализовайте функцию edit(). как это
$scope.edit = function(){ var data = $scope.student;/*the student name is automatically updated because of two-way data-binding*/$http.put('/rest/student',data).success(function(data){ alert("updated"); }).error(function(errResponse) { console.error('Error while fetching notes'); }); }