ng-model no longer updates after typing into text input

ng-model no longer updates after typing into text input

I am new to AngularJS and I am having a problem that I am having trouble solving, there was a similar question on stackoverflow but it didn’t seem to help me out. I basically have a form that gets updated by ng-click, but once once I enter text into any of the text boxes, those text boxes no longer update.
This is my HTML
Edit Course:

  • {{course.course_name}}








  • This is my function that is called when someone clicks on a link
    $scope.Edit_Course = function (id) {
    var course = {
    ‘course_id’ : id
    };

    $http({method: “POST”, url: “http://www.dgcharts.com/editcourse”, data: course})
    .success(function(data, status, headers, config){

    thecourse = data[“course”];
    $scope.edit_course_name = thecourse.course_name;
    $scope.edit_course_par = thecourse.par;
    $scope.edit_course_location = thecourse.course_location;
    $scope.edit_course_id = thecourse.id;
    $scope.showedit = 1;
    })
    }

    Solutions/Answers:

    Solution 1:

    your link requires a login.

    if i have to guess about your problem, it may be related to angular scoping issue. try changing your ng-model binding to an object property instead. so in your html, instead of:

    <input type="text" id="form_course_name" ng-model="edit_course_name">
    

    do this

    <input type="text" id="form_course_name" ng-model="course.edit_course_name">
    

    and in your javascript, on the ajax callback, change it to:

    $scope.course = {};  //only do this if $scope.course has not already been declared
    $scope.course.edit_course_name = thecourse.course_name;
    

    for more info on this issue, see: https://github.com/angular/angular.js/wiki/Understanding-Scopes

    Related:  What do these three dots in React do?

    References