2014-09-10 57 views
0

我正在使用角剑道,并且与剑道的下拉列表控件有一个奇怪的问题,即窗体上第一个下拉控件绑定的字段默认为? undefined:undefined ?。尽管生成的html首先有selected="selected"。当我在下拉菜单中明确选择一个值时,模型会正确更新。Angular Kendo Dropdownlist自动添加空白选项

下拉列表中填充了根范围内的数组。

也注意到,如果我启用了chrome的扩展AngularJS Batarang,那么它也可以工作。

我做了angular-kendo的调试,发现kendo会自动添加空白选项,其值为? undefined:undefined?。

<select class="s-select" kendo-drop-down-list k-data-source="lookupCache.getLookupValues('gender')" k-data-text-field="'DisplayName'" k-data-value-field="'Id'" k-value="'M'" ng-model="Model.Gender" /> 

,其中型号为{}默认

回答

0

它在剑道UI一个奇怪的问题。

我的解决方法:

不给在选择列表中的kendo-drop-down-list标签。而是通过JS功能让它变成kendo。

HTML:

<select id="searchisActive" ng-model="ngsearchisActive" ng-change="applyFilter()"> 
       <option value="-1">All</option> 
       <option value="1">Active</option> 
       <option value="0">Inactive</option> 
      </select> 

JS:

$(function() {   
    $("#searchisActive").kendoDropDownList(); 
}); 
2

对于动态数据源可以使用data-option-label,就像如下:

 <select name="packageName" id="packageName" 
     kendo-drop-down-list 
     k-options="dropDownListOptions" 
     k-ng-model="packageSelected" 
     ng-model="packageTypeId" 
     data-option-label="{value:'Select...',name:''}"/>