2016-10-04 147 views
0

这里有一个奇怪的:在我的代码的任何其他部分,这工作正常,但在这个特定的指令,它不会假定传递的默认值。它保持选择-----值。Kendo ui下拉默认值

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);  
} 

回答

0

的自定义编辑的name属性值("Role")必须经过编辑的字段的名称(​​),这似乎并没有这样的情况相匹配。

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

在此之后实现,您将不必在change处理DropDownList中的手动设置options.model.roleID

+1

哟,这是当场!谢谢哥们 !! –