2013-11-28 84 views

回答

2

你可以只讓一個自定義的指令,並通過在你想要預先選擇的多選指令的value屬性的項目,看看this Plunk看到我用的指令。

+0

嘿!你的自定義指令幫了我很多。我分叉它並在這裏編輯它(http://plnkr.co/edit/Z1E9FO8NAgpiSggSo3hY?p=info)我添加了一個pop方法來直接修改myItems。但是 - 運行時,更改不會反映在多選中。我怎樣才能修改指令來解決這個問題? – Matt

1

你必須掛鉤到上改變事件指令併發送kendoEvent。然後你可以在e.sender上使用支持的kendo方法。檢查出來這個plunker

<select id="required" multiple="multiple" kendo-multi-select k-on-change="changed(kendoEvent)"> 
     <option>Steven White</option> 
     <option>Nancy King</option> 
     <option>Nancy Davolio</option> 
     <option>Robert Davolio</option> 
     <option>Michael Leverling</option> 
     <option>Andrew Callahan</option> 
     <option>Michael Suyama</option> 
     <option selected>Anne King</option> 
     <option>Laura Peacock</option> 
     <option>Robert Fuller</option> 
     <option>Janet White</option> 
     <option>Nancy Leverling</option> 
     <option>Robert Buchanan</option> 
     <option>Margaret Buchanan</option> 
     <option selected>Andrew Fuller</option> 
     <option>Anne Davolio</option> 
     <option>Andrew Suyama</option> 
     <option>Nige Buchanan</option> 
     <option>Laura Fuller</option> 
    </select> 

    var app = angular.module('app', ['kendo.directives']); 

    app.controller("myCtrl", function ($compile, $scope) { 

     $scope.changed = function(e) { 
     console.log(e.sender.dataItems()); 
     }; 

    }); 
+0

當用戶更改小部件的值時發生更改,而不是最初加載時的更改 – mavroprovato

+0

我認爲初始onload已從數據庫或相關區域讀取數據。 – Kurkula