Ситуация "как есть":
Я использую плагин wenzhixin JQuery Multiple-Select-Plugin для предоставления выпадающего списка с несколькими выборками (см. http://multiple -select.wenzhixin.net.cn / home / ).У меня есть два экземпляра этого Multiselect-Dropdownbox на моей странице (я сделал его похожим в JSFiddle - но там, похоже, он работает ...).
Проблема:
Я не могу включить onClick-Listener в моем .done () - методе двух AJAX-вызовов для работы.В моем примере ниже функция click () - Event
$('#cbTailoringCategory').multipleSelect( { onClick: function() {...} })
не работает, но она превращает поле выбора в выпадающий список с несколькими выборками.Но это работает, когда я пишу изменения () - Слушатель, как это (но это срабатывает дважды):
$('#cbRoles').change(function (event) {
refreshDiagramNodes();
}).multipleSelect({
});
Вопрос
Как я могу получить щелчок () -Поправить, что мне не нужно использовать change () - Метод?
JsFiddle
Я пытался выделить проблему в JsFiddle, но здесь этоработает: - /
https://jsfiddle.net/schludi/6z0ns475/
Подробно в моем коде с AJAX-вызовами, когда ... готово ... jquery:
Оригинальные AJAX-вызовы моего кода следующие:
var myTailoringCategories = {};
var myKeypointResponsibles = {};
function loadTailoringCategories() {
$.when(
$.ajax({
type: "POST",
url: '/Services/DiagramService.asmx/GetTailoringCategories',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
var pcpTailoringCategories = msg.d;
$.each(pcpTailoringCategories, function (index, pcpTailoringCategory) {
myTailoringCategories[pcpTailoringCategory.tailoringcategory] = pcpTailoringCategory.tailoringelements;
$('#cbTailoringGroups').append($('<option>', {
value: pcpTailoringCategory.tailoringelements,
text: pcpTailoringCategory.tailoringcategory
}));
});
},
error: function (e) {
console.log('FEHLER! ' + e.responseText);
}
}),
$.ajax({
type: "POST",
url: '/Services/DiagramService.asmx/GetKeypointResponsibles',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
var keypointResponsibles = msg.d;
$.each(keypointResponsibles, function (index, keypointResponsible) {
myKeypointResponsibles[keypointResponsible] = keypointResponsible;
$('#cbRoles').append($('<option>', {
value: keypointResponsible,
text: keypointResponsible
}));
});
},
error: function (e) {
console.log('FEHLER! ' + e.responseText);
}
})
).done(function (result1, result2) {
updateCBFilter();
// Hier wird aus der Multiselect-Box eine Rollen-Liste
$('#cbRoles').change(function (event) {
refreshDiagramNodes();
}).multipleSelect({
});
// Hier wird aus der Multiselect-Box eine Tailoring-Liste
$('#cbTailoringGroups').multipleSelect({
onClick: function () {
alert('Click Event');
}
});
$('#cbTailoringGroups').multipleSelect('refresh');
//initializeTailoringCategories();
loadAllDiagramNodes(diagramType);
});
}