Con knockout 2.3.0 è stata introdotta l'associazione optionsAfterRender
in modo che le opzioni possano essere modificate in modo flessibile.Sopprimere blocco opzione di selezione didascalia
Desidero disattivare la didascalia delle opzioni. Al momento sto facendo
<select data-bind="options: items, optionsCaption:'please select', optionsAfterRender: function(option, item) { ko.applyBindingsToNode(option, {disable: !item}, item); }"></select>
che funziona, ma devo copiare e incollare la funzione optionsAfterRender
ovunque. Ho cercato di creare un bindingHandler personalizzato per farlo in un posto, ma ho delle difficoltà. Questo è il mio bindingHandler finora:
ko.bindingHandlers.disableOptionsCaption = {
init: function (element) {
ko.applyBindingsToNode(element, {
optionsAfterRender: function (option, item) {
ko.applyBindingsToNode(option, {
disable: !item
}, item);
}
});
}
};
I've also created a fiddle here that shows the working version and non-working. Qualsiasi aiuto sarebbe apprezzato!