Есть ли способ указать несколько элементов автозаполнения на одной странице с разными K-опциями (источник данных) ??Каждый раз, когда пользователь выбирает элемент из 1-го поля автозаполнения и переходит во 2-е поле автозаполнения, чтобы выбрать другой элемент, выбранные записи из 1-го поля автозаполнения исчезают.
Если атрибут k-options одинаков для 1-го и 2-го элемента автозаполнения, то записи не исчезают из 1-го поля автозаполнения?Я думаю, что это как-то связано с тем, что источники данных различаются в 1-м и 2-м элементах автозаполнения ...
$scope.select1Options = {
placeholder: "Search Par...",
noDataTemplate: 'No Partner's found',
dataTextField: "Name",
dataValueField: "Id",
valuePrimitive: false,
autoBind: false,
//filter: "contains",
//animation: {
// close: {
// effects: "fadeOut zoom:out",
// duration: 300
// },
// open: {
// effects: "fadeIn zoom:in",
// duration: 300
// }
//},
minLength: 3,
dataSource: {
//type: "odata",
serverFiltering: true,
serverPaging: true,
pageSize: 10,
filtering: function (e) {
var filter = e.filter;
if (!filter.value) {
//prevent filtering if the filter does not value
e.preventDefault();
}
},
transport: {
read: {
url: "/Partner/Configuration/GetPartners",
type: 'GET',
dataType: 'json'
},
parameterMap: function (options, type) {
if (type === "read") {
var paramMap = kendo.data.transports.odata.parameterMap(options);
delete paramMap.$inlinecount; // <-- remove inlinecount parameter.
delete paramMap.$format; // <-- remove format parameter.
return { searchCriteria: options.filter.filters[0].value };
}
},
schema: {
data: function (data) {
return data; // <-- The result is just the data, it doesn't need to be unpacked.
},
total: function (data) {
return data.length; // <-- The total items count is the data length, there is no .Count to unpack.
}
}
}
},
select: function(e) {
$('select[name="multi_select1[]"]').change(function() {
$scope.partner = $(this).val();
});
}
};
$scope.select2Options = {
placeholder: "Search Emp...",
noDataTemplate: 'No Employers's found',
dataTextField: "Name",
dataValueField: "EmpId",
valuePrimitive: false,
autoBind: false,
//filter: "contains",
//animation: {
// close: {
// effects: "fadeOut zoom:out",
// duration: 300
// },
// open: {
// effects: "fadeIn zoom:in",
// duration: 300
// }
//},
minLength: 3,
dataSource: {
//type: "odata",
serverFiltering: true,
serverPaging: true,
pageSize: 10,
filtering: function (e) {
var filter = e.filter;
if (!filter.value) {
//prevent filtering if the filter does not value
e.preventDefault();
}
},
transport: {
read: {
url: "/Partner/Configuration/GetEmployers",
type: 'GET',
dataType: 'json'
},
parameterMap: function (options, type) {
if (type === "read") {
var paramMap = kendo.data.transports.odata.parameterMap(options);
delete paramMap.$inlinecount; // <-- remove inlinecount parameter.
delete paramMap.$format; // <-- remove format parameter.
return { searchText: options.filter.filters[0].value };
}
},
schema: {
data: function (data) {
return data; // <-- The result is just the data, it doesn't need to be unpacked.
},
total: function (data) {
return data.length; // <-- The total items count is the data length, there is no .Count to unpack.
}
}
}
},
select: function (e) {
$('select[name="multi_select2[]"]').change(function () {
$scope.employer = $(this).val();
});
}
};
<select kendo-multi-select k-options="select1Options" k-ng-model="configuration" k-min-length="3" name="multi_select1[]" class="form-control" ></select>
<select kendo-multi-select k-options="select2Options" k-ng-model="configuration" k-min-length="3" name="multi_select2[]" class="form-control" ></select>