2015-10-17 37 views
0

我正在爲給定ID獲取客戶,客戶詳細信息是名稱,電子郵件和客戶類型{0,1}。 對於0,客戶將爲Regular,1將爲Temporary。如何在控制器中使用ng-options時設置選項的值?

我能夠在窗體上顯示客戶的詳細信息,但能夠選擇客戶類型。我的選擇選項顯示{'regular','temporary'},但不選擇任何選項值。

例如

customer1={'name':'john', 'email':'[email protected]', 'customer_type':0} 

形式能夠顯示的姓名和電子郵件,但不選擇'常規' 選項

控制器

$scope.customers_type=['regular','temporary']; 
    //I will get details of customer 
    $scope.customer=getCustomer($scope.id); 

    if($scope.customer.customer_type ==0) 
     $scope.customer.type=$scope.customers_type[0]  
    else 
     $scope.customer.type=$scope.customers_type[1] 

HTML

<div> 
    <label for="Name">Name </label> 
    <input ng-model='customer.name' name="Name" type="text"> 
    </div> 
    <div> 
    <label for="email">Email </label> 
    <input ng-model='customer.email' name="email" type="text"> 
    </div> 
    <div> 
    <label for="enterprise">Type of type of Customer </label> 
    <select ng-model='customer.type' type="text" ng-options="type for type in customers_type"> 
    </select> 
    </div> 
+0

你*已經*獲得期權的價值;也許你問的是如何獲得物品的「索引」?即現在,'customer.type'可以等於* values *''regular''或''temporary'',但是你的模型有'0'和'1'。 – Claies

+0

@Claies,是的,你是對的.. – geeks

回答

1

代碼是沒有任何錯誤的工作罰款angularjs 1.2.23

就已經取代getCustomer方法目的。

如果沒有,那麼檢查客戶對象使用斷點並檢查它是否是正確與否,並檢查您所使用的的angularjs版本工作。

angular.module("myApp", []).controller('MyContrl', function($scope) { 
 
    $scope.customers_type = ['regular', 'temporary']; 
 
    //I will get details of customer 
 
    $scope.customer = { 
 
    'name': 'john', 
 
    'email': '[email protected]', 
 
    'customer_type': 0 
 
    }; 
 

 
    if ($scope.customer.customer_type === 0) { 
 
    $scope.customer.type = $scope.customers_type[0] 
 
    } else { 
 
    $scope.customer.type = $scope.customers_type[1] 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="myApp" ng-controller="MyContrl"> 
 
    <div> 
 
    <label for="Name">Name</label> 
 
    <input ng-model='customer.name' name="Name" type="text"> 
 
    </div> 
 
    <div> 
 
    <label for="email">Email</label> 
 
    <input ng-model='customer.email' name="email" type="text"> 
 
    </div> 
 
    <div> 
 
    <label for="enterprise">Type of type of Customer</label> 
 
    <select ng-model='customer.type' type="text" ng-options="type for type in customers_type"> 
 
    </select> 
 
    </div> 
 
</div>

0

我認爲您需要指定ng-selected並將其設置爲您當前的客戶類型。 如果不指定ng-selected你會選擇3結束了:「」,「普通」,「臨時」

相關問題