簡體   English   中英

在選擇列表Angular JS中獲取所選選項的選項文本

[英]Getting the option text for selected option in select list angular js

我的選擇列表數據如下所示

{
  123: 'abc',
  234: 'bcd',
  .
  .
}

我在模板中使用ng-options來呈現這樣的

<select ng-model="myOption" ng-option="key as value for (key, value) in data"></select>

現在我想在js控制器中獲取所選選項的選項文本

可能嗎?

PS-我無法更改選擇列表的數據的數據結構,因此使其成為對象的對象如下圖所示

{
 {
   name: 'abc',
   value: 123
 },
 {
   name: 'bcd',
   value: 234
 }
}

編輯:我仍然希望能夠訪問所選的密鑰,即123或234

您可以使用ng-change並實現一個函數以通過鍵獲取值

<div>
    <select ng-model="myOption" ng-options="key as value for (key, value) in data" ng-change="getVal(myOption)"></select>

    {{selectVal}}
</div>

$scope.getVal = function(val){
    $scope.selectVal = $scope.data[val]
}

不是ng-optionss

演示

 angular.module("app",[]) .controller("ctrl",function($scope){ $scope.data = { 123: 'abc', 234: 'bcd', } $scope.getVal = function(val){ $scope.selectVal = $scope.data[val] } }) 
 <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> <div ng-app="app" ng-controller="ctrl"> <select ng-model="myOption" ng-options="key as value for (key, value) in data" ng-change="getVal(myOption)"></select> {{selectVal}} </div> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM