2017-01-05 76 views
2

這裏我嘗試將數據加載到dropdownList其加載但爲什麼默認情況下,它從列表中選擇最後一個值。爲什麼選擇上一個值的下拉列表

的Html

<div ng-controller="Part5Controller"> 
    Country : <select ng-model="CountryID" ng-options="I.CountryID as I.CountryName for I in CountryList" ng-change="GetState()"> 
     <option value="">Select Country</option> 
    </select> 
</div> 

controller.Js

app.controller('Part5Controller', function ($scope, servicemard) { 
    getCountrys(); 
    function getCountrys() { 
     var xx = servicemard.getctrys(); 
     xx.then(function (d) { 
      $scope.CountryList = d.data; 
     }) 
    } 
}) 

service.js

app.service('servicemard', function ($http) { 
    this.getctrys = function() { 
     return $http.get('/Jan/GetCountries') 

     } 
}) 
+1

您可以添加'Jan/GetCountries'響應嗎? –

回答

1

你可能想一舉兩得添加CountryID初始化。給「提示」選項一個值使你必須處理它。可能更好的方法是預先選擇並禁用它。

<div ng-controller="Part5Controller"> 
    Country : <select ng-model="CountryID" ng-options="I.CountryID as I.CountryName for I in CountryList" ng-change="GetState()"> 
     <option value="" selected disabled>Select Country</option> 
    </select> 
</div> 

現在,默認情況下會提示提示,但實際上不能爲綁定選擇提示。我的經驗是在綁定上有一個空值,沒有選擇的結果默認情況下是選擇列表中的最後一項。

0

角的ng-model保持目標屬性和小部件狀態的同步值。在你的情況下,這意味着選項CountryID等於你的控制器的範圍CountryID被選中。我沒有看到控制器的任何定義CountryID,所以我認爲你應該嘗試明確。

設置你的空選項,

<option value="-1">Select Country</option> 

並在控制器

$scope.CountryID = -1; 
相關問題