saad.raza Ответов: 0

Невозможно установить значение при получении данных из базы данных angular JS dropdownlist MVC


Я не могу установить значение angular dropdownlist с помощью mvc и rest api.
шаги:
1. Откройте страницу списка и выберите запись
2. перейдите на другую страницу, где я могу отредактировать выбранную запись.

Вопрос:
когда я перехожу на страницу(edit page) 1-й раз, выпадающее значение не задается
когда я снова вернусь на страницу списка и выберу запись, то выпадающее значение будет выбрано.
я не могу понять, что с ним было не так?

Что я уже пробовал:

HTML-код:
<select ng-model="vm.CountryID">
                           <option ng-repeat="x in vm.country" value="{{x.countryID}}" ng-selected="{{x.countryID ==vm.CountryID}}" >{{x.countryName}}</option>
                       </select>


Код JS:

this.initializeController = function () {

           vm.title = "Customer Maintenance";

           vm.messageBox = "";
           vm.alerts = [];
           var city = new Object();
           ajaxService.ajaxPost(city, "api/CityService/GetCity", this.getCityOnSuccess, this.getCityOnError);
           var country = new Object();
           ajaxService.ajaxPost(country, "api/CountryService/GetCountry", this.getCountryOnSuccess, this.getCountryOnError);

           var customerID = ($routeParams.id || "");

           if (customerID === "") {
               vm.customerID = "0";
               vm.customerName = "";
               vm.customerAddress = "";
               vm.CountryID = "1";
               vm.CityID = "1";
               vm.phoneNo = "(+92) 300-8888888";
           }
           else {
               vm.customerID = customerID;
               var customer = new Object();
               customer.customerID = customerID;
               ajaxService.ajaxPost(customer, "api/CustomerService/GetCustomer", this.getCustomerOnSuccess, this.getCustomerOnError);
           }

       };


this.getCustomerOnSuccess = function (response) {
           vm.customerName = response.customerName;
           vm.customerAddress = response.customerAddress;
           vm.CityID = response.cityID;
           vm.CountryID = response.countryID;
           vm.phoneNo = response.phoneNo;

       };


this.getCountryOnSuccess = function (response) {
         vm.country = response.countries;

     };

0 Ответов