簡體   English   中英

從angularJs中的控制器綁定ngModel或從ngModel調用函數

[英]binding ngModel from controller in angularJs or calling function from ngModel

我試圖基於angularjs中的某些屬性綁定未知的數組索引。

    <select id="iditemtype" ng-model="method(entity, e)"
        ng-options="e as e.configValue for e in allConfig() | filter:{typeName:'ItemType'}">
    </select>

//javascript method inside controller

    function method()
    {
        var index = -1;
        for(var i=0;i<entity.attributes.length;i++){
            if(entity.attributes[i].type=='ItemType'){
                index = i;
                break;
            }
        }

        if(index==-1){
            entity.attributes.push(0, e);
        }
        else
            entity.attributes[index] = e;
    }

以上示例代碼是我的真實意圖。 我想從選擇列表中綁定特定屬性。

我正在使用angularjs 1.3

在這里,您不能將函數傳遞給ng-model,因為當用戶更改輸入值時,Angular必須能夠設置值。 在這里,您可以使用$ watch來實現您的目標,也可以在這里使用select的angular的ng-change指令。 在選擇值更改時調用函數,並在已與ng-change綁定的控制器函數中設置相關變量。

暫無
暫無

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

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