我在我们的项目中使用 Kendo UI MVC 版本“version:2016:1.112.545”,并且 Cascading ComboBox 中存在一个错误,可以在 ASP 中的 Telerik 演示中重现该错误。 NET MVC、HTML5/JavaScript、JSP 和 PHP ( http://demos.telerik.com/kendo-ui/combobox/cascadingcombobox )。
(注意:需要在组合框中输入文本)
重现步骤:
访问给定的 URL。
在类别组合框中输入字母 b 并选择饮料
在产品组合框中输入字母 c 并选择 Chai
在订单组合框中输入字母 p 并选择波特兰
现在清除类别组合框中的文本,它将填充所有类别,但不要选择其中任何一个,只需单击外部
请注意,所有组合框中的内容都被清除,但订单下拉列表仍然可以访问,单击它将填充所有订单。
(注意:我在 Chrome 和 Firefox 中检查过,而且仅单击下拉菜单不会重现此问题。请按原样按照说明进行操作)
如果有人知道修复或破解,请分享。
(注意:我的许可证已过期,因此没有专门的支持或访问高级论坛线程的权限)
最佳答案
不错的收获。它是 kendo-ui 中的错误,您也可以将此错误报告到 kendo-UI 错误跟踪中。
请尝试使用以下代码片段。
<!DOCTYPE html>
<html>
<head>
<title>Jayesh Goyani</title>
<link rel="stylesheet" href="http://kendo.cdn.telerik.com/2016.1.112/styles/kendo.common.min.css">
<link rel="stylesheet" href="http://kendo.cdn.telerik.com/2016.1.112/styles/kendo.rtl.min.css">
<link rel="stylesheet" href="http://kendo.cdn.telerik.com/2016.1.112/styles/kendo.default.min.css">
<link rel="stylesheet" href="http://kendo.cdn.telerik.com/2016.1.112/styles/kendo.mobile.all.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="http://kendo.cdn.telerik.com/2016.1.112/js/angular.min.js"></script>
<script src="http://kendo.cdn.telerik.com/2016.1.112/js/jszip.min.js"></script>
<script src="https://github.com/downloads/SteveSanderson/knockout/knockout-2.0.0.debug.js"></script>
<script src="http://kendo.cdn.telerik.com/2016.1.112/js/kendo.all.min.js"></script>
<script src="http://rniemeyer.github.io/knockout-kendo/js/knockout-kendo.min.js"></script>
<style>
</style>
</head>
<body>
<input id="categories" />
<br />
<br />
<input id="products" disabled="disabled" />
<br />
<br />
<input id="orders" disabled="disabled" />
<script>
$(document).ready(function () {
var categories = $("#categories").kendoComboBox({
filter: "contains",
placeholder: "Select category...",
dataTextField: "CategoryName",
dataValueField: "CategoryID",
dataSource: {
type: "odata",
serverFiltering: true,
transport: {
read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Categories"
}
}
}).data("kendoComboBox");
var products = $("#products").kendoComboBox({
autoBind: false,
cascadeFrom: "categories",
filter: "contains",
placeholder: "Select product...",
dataTextField: "ProductName",
dataValueField: "ProductID",
dataSource: {
type: "odata",
serverFiltering: true,
transport: {
read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Products"
}
}
}).data("kendoComboBox");
var orders = $("#orders").kendoComboBox({
autoBind: false,
cascadeFrom: "products",
filter: "contains",
placeholder: "Select order...",
dataTextField: "Order.ShipCity",
dataValueField: "OrderID",
dataBound: onDataBound,
dataSource: {
type: "odata",
serverFiltering: true,
transport: {
read: "https://demos.telerik.com/kendo-ui/service/Northwind.svc/Order_Details?$expand=Order"
}
}
}).data("kendoComboBox");
});
function onDataBound(e) {
if ($("#products").data("kendoComboBox").selectedIndex == -1) {
$("#orders").data("kendoComboBox").enable(false);
}
}
</script>
</body>
</html>
如果有任何疑问,请告诉我。
关于kendo-ui - Kendo UI 级联组合框 : Child not disabled on clearing parent combobox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35946201/