0
所以我這是這樣新的劍道數據源爲空?
var newArrary = Array();
for (var i = 0; i < result.length; i++) {
if (result[i].Id != TaskId) {
newArrary.push({text:result[i].Name, value:result[i].Id})
}
}
我做了的console.log,可以看到,數組得到正確初始化定義的數組。
我再接着創建一個新的數據源
var dataSource = new kendo.data.DataSource({
data: newArrary
});
,並檢查,看看它是正確初始化
但是當我嘗試將其設置爲與我的下拉列表中的setDataSource
方法的下拉列表,它抱怨大約Uncaught TypeError: Text.indexOf is not a function
所以我做了一個簡單的dataSource.at(1)
並得到'undefined'。不知道我在這裏做錯了什麼?
更新添加更多的代碼:
如何創建/配置的下拉
@(Html.Kendo().DropDownListFor(m => m)
.BindTo(list)
.DataTextField("Text")
.DataValueField("Value")
.HtmlAttributes(attributes)
.OptionLabel(string.IsNullOrEmpty(label) ? (required && @dropDownList.Value != "0" && @dropDownList.Value != "" ? "" : " ") : label)
.Value(@dropDownList.Value)
.TemplateId("myTemplate")
.ValueTemplateId("dmyTemplate")
)
怎麼我使用的的setDataSource
setTask = function (result, taskCodeStartList, taskCodeResultLisr) {
var selectedTaskItem = $("#" + taskStartList).data("kendoDropDownList")
var selectedFilterTask = $("#" + taskResultLisr).data("kendoDropDownList").value()
var newArrary = Array();
for (var i = 0; i < result.length; i++) {
if (result[i].Id != selectedFilterTaskId) {
newArrary.push({text:result[i].Name, value:result[i].Id})
}
}
var dataSource = new kendo.data.DataSource({
data: newArrary
});
selectedTaskCodeItem.setDataSource(dataSource);
return selectedTaskCodeItem;
};
請提供DropDownList配置以及您使用'setDataSource'的方式和位置。一個完整的虛擬'結果'示例將會非常有用。 – dimodi
@dimodi我使用Kendo MVC,所以我不能真正創建一個工作示例,但我可以發佈更多的代碼。 –