我试图通过Jquery使用kendoTreeList的功能。 Tekerik文档在这里: https://docs.telerik.com/kendo-ui/api/javascript/ui/treelist
我使用的代码如下所示:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="~/Scripts/jquery-1.12.4.js"></script>
<script src="@Url.Content("~/Scripts/kendo/kendo.all.min.js")"></script>
<script src="@Url.Content("~/Scripts/kendo/kendo.treelist.min.js")">
</script>
<script>
var search = document.getElementById("SearchTerm");
function SearchResults(results) {
$('#ResultsList').empty();
var items = {};
$.each(results, function (i, value) {
items += { id: i, parentId: null, Name: value.MacroName, Type:"Macro" }
if (value.Files.length > 0) {
$.each(value.Files, function (x, File) {
items += {parentId: i, Name: File, Type:"File"}
});
}
if (value.Servers.length > 0) {
$.each(value.Services, function (x, Server) {
items += { parentId: i, Name: Server, Type: "Server" }
});
}
if (value.Databases.length > 0) {
$.each(value.Databases, function (x, DB) {
items += { parentId: i, Name: DB, Type: "Databases"}
});
}
if (value.Services.length > 0) {
$.each(value.Services, function (x, Service) {
items += { parentId: i, Name: Service, Type: "Service" }
});
}
if (value.SecGroups.length > 0) {
$.each(value.SecGroups, function (x, PSI) {
items += { parentId: i, Name: PSI, Type: "SecGroup" }
});
}
});
$("#ResultsList").kendoTreeList({
columns: [
{ field: "Name" },
{ field: "Type"},
{
command: [{
name: "Display",
text: "Display",
click: function (e) {
// e.target is the DOM element representing the button
var tr = $(e.target).closest("tr"); // get the current table row (tr)
// get the data bound to the current table row
var data = this.dataItem(tr);
console.log("Details for: " + data.Name);
Display(data.Name, data.Type)
}
}]
}
],
editable: true,
dataSource: items
});
}
function Display(value,Type)...
</script>
代码越多,但搜索结果就是必要的,它包含了kendoTreeList函数。调试器说.kendoTreeList不是一个函数,但它应该。为什么说这不是一个功能?
答案 0 :(得分:0)
该问题是由于有多个JQuery Script引用引起的。
在MVC中工作时,视图 - &gt; Shared-&gt; _Layout.cshtml 下的_Layout
页面默认情况下底部有@Scripts.Render("~/bundles/jquery")
的引用。这需要删除。拥有多个Jquery引用将导致脚本出现问题,导致编译器无法找到您尝试使用的函数。