[英]How to assign a second parameter value on ng-change in angularjs?
我有簡單的下拉綁定角度模型
<select
ng-model="user.Id"
ng-options="convertToInt(c.Id) as c.Name for c in users"
ng-change="changeItem(user.Id)"
>
<option ng-selected="c.Id == user.Id" value="{{c.Name}}"></option>
</select>
並在控制器中
$scope.changeItem = function(item){
//userid
}
如何從選擇框中獲取用戶名,即返回c.Name?
傳遞整個用戶對象
ng-change="changeItem(c)"
接着,
$scope.changeItem = function(item){
console.log(item.name);
}
傳遞愛麗絲對象
ng-change="changeItem(c)"
接着,
$scope.changeItem = function(user){
console.log(user.name);
}
關於什么
<selectng-model="user"
ng-options="item as item.name for item in users track by item.id"
ng-change="onChange()">
</select>
$scope.onChange = function(){
console.log($scope.user);
};
選擇整個對象給selectedUser
,就可以從對象中獲得所需的一切。
<div ng-app="myApp" ng-controller="HomeCtrl as vm"> <select ng-options="user as user.name for user in vm.users" ng-model="vm.selectedUser"></select> <p>Selected user: {{vm.selectedUser.name}}</p> </div> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <script> angular.module('myApp', []) .controller('HomeCtrl', function() { let vm = this; vm.users = [ { id: 1, name: 'John', }, { id: 2, name: 'Joe', }, { id: 3, name: 'Jim', }, ]; vm.userId = 2; vm.selectedUser = vm.users.find(u => u.id === vm.userId); }); </script>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.