Kendo UI Автозаполнение, поиск по имени
В настоящее время у меня есть некоторые проблемы с Kendo UI. На данный момент у меня есть автозаполнение, которое я использую, чтобы получить сотрудников. У меня проблема в том, что я хотел бы, чтобы автозаполнение работало с несколькими словами (имя и фамилия), например, "Джон Смит". В настоящее время у меня есть автозаполнение, работающее нормально, если набрано "john", то в выпадающем списке ниже будет показан "John smith" вместе с другими именами, содержащими слово "john". То же самое будет хорошо, если я введу фамилию "Смит" и у меня будет возможность выбрать "Джон Смит". Что я пытаюсь сделать, так это то, что, когда все имя набрано в "Джон Смит", позволяет пользователю выбрать Джона Смита, это означает, что он все еще выполняет поиск по двум словам. Кто-нибудь может помочь? Я поставлю свой код ниже.
Благодарю.
//Autocomplete FeeEarner
$("#FeeEarnerEmailSend").kendoAutoComplete({
dataSource: new kendo.data.DataSource({
serverFiltering: true,
transport: {
read: "/" + prefix + "/api/Session/GetEmployees",
parameterMap: function () {
return { id: $("#FeeEarnerEmailSend").data("kendoAutoComplete").value() };
}
}
}),
dataTextField: 'FullName',
filter: "contains",
//placeholder: "Search...",
minLength: 3,
suggest: true,
select: function (e) {
var employeeAutoComplete = e.sender;
// this var is used in the Search button click event
selectedEmployeeDataItem = employeeAutoComplete.dataItem(e.item.index());
},
change: function () {
if ($.trim($("#FeeEarnerEmailSend").val()) == "") {
selectedEmployeeDataItem = null;
}
},
dataBound: function (e) {
selectedEmployeeDataItem = e.sender.dataItem(0);
}
});
1 ответ
Из вашего вопроса я понял, что вы хотите выбрать имя, пока не наберете полное имя. Это зависит от свойств "filter" и "minLength" автозаполнения виджета.
Фильтры, поддерживаемые kendo auto-complete: начальный, конечный и содержащий.
minLength: - Это зависит от требования, что после ввода количества символов должна начаться фильтрация. Если это убрано, фильтрация начинается сразу после ввода символа.
Поскольку имя имеет разную длину, поэтому я боюсь, что фильтрация имени с помощью minLength может удовлетворить ваши требования. Также то же самое со свойством "filter", так как оно не поддерживает ничего вроде "точного соответствия" (по умолчанию = 1).
Итак, вам решать, насколько мудро вы используете эти два свойства для достижения своей цели.
Надеюсь это поможет.