簡體   English   中英

AngularJS:選擇列表的ng-change

[英]Angularjs: ng-change for select list

我正在使用angularjs,我有一個顯示問題列表的指令。 selectedQuestion更改時,我打算做一些邏輯。 因此,我使用了ng-change

這是我的指令:

 restrict: 'EA',
            scope: {                             
                selectedQuestion: '=?', 
                questionsList: '='  
            },
            link: function (scope) {
                scope.change = function () {
                    if (scope.selectedQuestion) {
                        //do something
                    }
                };
            }

這是我的指令的html模板:

   <select  ng-model="selectedQuestion"
            ng-options="avail.question for avail in questionsList track by avail.id" ng-change="change()"
   </select>

  {{selectedQuestion}}

當我在UI列表中更改問題時, {{selectedQuestion}}更改為顯示所選問題的json。 然而, scope.selectedQuestionscope.change功能總是一樣的初始化(不改變)。

是什么導致此問題?

嘗試將模型作為參數傳遞給ng-change函數:

<select ng-model="selectedQuestion"
        ng-options="avail.question for avail in questionsList track by avail.id" 
        ng-change="change(selectedQuestion)"
</select>

然后在您的指令中:

link: function (scope) {
        scope.change = function (currentQuestion) {
            if (currentQuestion) {
            }
        };
     }

暫無
暫無

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

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