2016-10-04 3 views
0

Hier ist ein seltsames Beispiel: In anderen Teilen meines Codes funktioniert das gut, aber in dieser speziellen Anweisung wird nicht davon ausgegangen, dass der Standardwert übergeben wird. Es behält den ausgewählten ----- Wert bei.Kendo ui dropdown Standardwert

function RolesDropDownEditor(container, options) {  
    var _roleID = null;  
    if (options.model.roleID !== null && options.model.roleID !== undefined) 
     _roleID = options.model.roleID;  
    $('<input name="Role" id="ddRoles" required="required"/>') 
    .appendTo(container) 
    .kendoDropDownList({ 
     dataTextField: "name", 
     dataValueField: "roleID", 
     dataSource: $rootScope.globalObjects.dsRoles, 
     optionLabel: '--', 
     change: function (e) 
     { 
       options.model.roleID = this.value(); 
       options.model.dirty = true; 
       $scope.$apply();  
     } 
    });  
    $("#ddRoles").data("kendoDropDownList").value(_roleID);  
    $("<span class='k-invalid-msg' data-for='Role'></span>").appendTo(container);  
} 

Antwort

0

Die name des benutzerdefinierten Editor Attributwert ("Role") muss das editierte Feld Name ("roleID") entsprechen, das scheint nicht der Fall zu sein.

http://demos.telerik.com/kendo-ui/grid/editing-custom

Danach implementiert ist, werden Sie nicht options.model.roleID manuell im change Handler des Dropdownlist zu setzen haben.

+1

Huch, das war genau richtig !! Danke Kumpel !! –