Làm cách nào để xóa trình đơn thả xuống của nhà điều hành khỏi menu bộ lọc lưới Kendo? Tôi có một danh sách thả xuống bên dưới có chứa các giá trị để người dùng lựa chọn, do đó, nó là vô nghĩa để có một hộp ở trên mà nói là bằng.Xóa trình đơn thả xuống của nhà điều hành từ menu bộ lọc lưới Kendo
5
A
Trả lời
4
Câu hỏi này đã được trả lời trong các diễn đàn Kendo: Kendo forum - Use dropdownlist in grid column filter
Đó là tốt để tìm kiếm luôn có trước khi các nơi khác. Về cơ bản, bạn nhận được bộ lọc tiêu đề và ẩn menu thả xuống. Tôi đã lấy sự tự do để sửa đổi fiddle trong diễn đàn vì bộ chọn jquery header find là một chút "cucoo". Và bạn có thể sử dụng cấu hình kendo thông thường thay vì tạo thủ công kết hợp
filterable: {
ui: function(){ ... }
}
Điều chính là ẩn và sửa đổi trợ giúp.
// Find the Role filter menu.
var filterMenu = _grid.thead.find("th[data-field='roleTitle']").data("kendoFilterMenu");
filterMenu.form.find("div.k-filter-help-text").text("Select an item from the list:");
filterMenu.form.find("span.k-dropdown:first").css("display", "none");
Tìm nó ở đây: JSFiddle - Dropdown filter in kendo grid
0
add sự kiện vào lưới
.Events(e => e.FilterMenuInit("FilterMenuFunc"))
sau đó một chức năng java script
function FilterMenuFunc(e) {
var grid = $("#GridName").data("kendoGrid");
var filterMenu = $(grid.thead.find("th:not(.k-hierarchy-cell,.k-group-cell)")[5]).data("kendoFilterMenu");//5 is index of column
try {
filterMenu.form.find("div.k-filter-help-text").text("Please Select A Value From List.");
filterMenu.form.find("span.k-dropdown:first").css("display", "none");
} catch (e) {}
}
1
tôi đã làm tôi bằng cách tuyên bố một hàm để gọi khi xây dựng giao diện người dùng. Nó sẽ dễ dàng hơn nhiều so với săn bắn xung quanh cho các lớp học.
{
field: "Status",
title: "Status",
filterable: {
extra: false,
ui: statusFilter
}
}
function statusFilter(element) {
// finds the closest form so we can start manipulating things.
var form = element.closest("form");
// changes the help text. (you might want to localise this)
form.find(".k-filter-help-text:first").text("Select an item from the list:");
// removes the dropdown list containing the operators (contains etc)
form.find("select").remove();
// Adds a new dropdownlist with all the options you want to select from
element.kendoDropDownList({ ...... });
}
Xin chào @regisbsb. tôi đã cố gắng sử dụng giải pháp của bạn nhưng tôi có "Không thể tìm được tài sản 'tìm' của không xác định hoặc tham chiếu null" ngoại lệ. Bạn có thể giúp tôi về việc sửa lỗi ngoại lệ này không? – MustafaP
Bạn có thể xây dựng? Bạn đã thấy fiddle chưa? Nó làm việc cho tôi. – regisbsb
Tôi đã sửa nó. Tôi tha thứ nhưng tôi nghĩ đó là về các sự kiện. FilterMenu không được tải hoàn toàn lúc đầu. Đó là lý do tại sao tài sản 'tìm' là không xác định. Cảm ơn bạn đã trả lời @regisbsb – MustafaP