我正在使用JQuery添加KendoUI.DropDown Box。它与数据源绑定良好,并按预期显示结果。但是当我尝试将自定义项添加到数据源时:
// create a new data item
dsBusinessUnit.add( { Value: "All Business Units" });
它出现以下错误:
SCRIPT5007: Unable to get property '__count' of undefined or null reference
我正在按如下方式绑定数据源,只要我不添加额外的项目就可以正常工作。
// business unit data source
var dsBusinessUnit = new kendo.data.DataSource({
type: "odata",
transport: {
read:
{
url: "http://sharepointservername/_vti_bin/listdata.svc/dropdownfieldfunction",
dataType: "json"
}
},
schema: {
model: {
fields: {
Value: { type: "string" }
}
}
},
serverFiltering: true,
serverSorting: true
});
我做错了什么。我在Telerik的网站上看过一些例子,他们提供了相同的语法。我尝试过包含所有.js文件,但它似乎不起作用。任何帮助都会被贬低。
答案 0 :(得分:2)
我认为向dataSource添加新项目没有问题。基本上这里是演示的一个例子
$("#products").kendoDropDownList({
dataTextField: "ProductName",
dataValueField: "ProductID",
dataSource: {
transport: {
read: {
dataType: "jsonp",
url: "http://demos.telerik.com/kendo-ui/service/Products",
}
}
}
});
$("#btn").click(function(){
$("#products").getKendoDropDownList().dataSource.insert({
ProductName: "Foo",
ProductId: 22
})
})
答案 1 :(得分:0)
每当你想为kendo UI Objects做任何CRUD(创建,读取,更新或删除操作)时,你必须在kendo ui ajax调用中定义这个过程。
定义创建的方法,然后您可以将自定义数据添加到下拉列表