2016-12-10 3 views
1

Как использовать поле выбора с функцией ng-click. я попытался, но это не работает с моей стороны. Если любая альтернатива разделяет код.Я использую Angular js1. Когда я использую угловую область выбора, ng-click не работает

var app = angular.module('myApp', []); 
 
app.controller('myCtrl', function($scope) { 
 
    $scope.items = ["john", "Aplle", "Ravi"]; 
 
    
 
    $scope.clicked**=function(){ 
 
    alert("hello"); 
 
    }; 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.1/angular.min.js"></script> 
 
<div ng-app="myApp" ng-controller="myCtrl"> 
 

 
<select> 
 
<option ng-repeat="item in items" ng-click="clicked()">{{item}}</option> 
 
</select> 
 

 
</div>

ответ

2

event директива по options теге select никогда не будет. Вы должны использовать ng-change на выбранном элементе.

<select ng-model="selectedItem" ng-change="clicked()"> 
    <option ng-repeat="item in items" ng-value="item.value">{{item}}</option> 
</select> 

Хотя выше не правильный способ, чтобы решить вашу проблему, вы должны использовать ng-options вместо ng-repeat

<select ng-model="selectedItem" 
    ng-options="item for item in items" 
    ng-change="clicked(item)"> 
</select> 
+0

@periyasamy вы можете принять ответ. это, если работает для вас, спасибо :) –

+0

Спасибо, что ответили на этот вопрос @pankaj Parkar. Это работает обычно, но когда я использую и выбираю ng-change = "clicked (item)", эта функция нажата не может работать должным образом. Если вы отправляете 2 функции щелчка данных. Эта ng-change не может правильно позвонить (не работа аналогична ng-click). Как мне настроить функцию? – Periyasamy

+0

@periyasamy, он должен работать, вы пробовали 'ng-options', который я предложил во второй части ответа? –

0

Вы также можете использовать ng-click, но он должен быть в избранных:

<select ng-click="clicked()"> 
    <option ng-repeat="item in items">{{item}}</option> 
</select> 
+0

Помещение 'ng-click =" clicked() "' on select не будет обеспечивать ожидаемое поведение, поскольку оно будет вызвано, как только вы нажмете на select, будет ли поведение 'ng-change' вести себя так, как ожидалось, когда опция будет изменена? –

Смежные вопросы