2015-07-16 4 views
1

Я создаю виджет, который использует selectize и другую кнопку. Я хочу, чтобы кнопка была отключена всякий раз, когда функция selectize заблокирована. Каков наилучший способ сделать это?Каков наиболее эффективный способ отслеживания блокировки виджета выбора?

Насколько я могу судить, в API-интерфейсе select ничего нет. Кроме того, я не могу предвидеть все действия, которые вызывают блокировку selectize, потому что некоторые из них являются внутренними для selectize.

+0

что заперто? отключен? имеет значение, выбранное? – basher

+0

Заблокировано функционально отключено, но не визуально, поэтому используется для временного прекращения ввода. Это часть выбора api, описанная здесь: https://github.com/brianreavis/selectize.js/blob/master/docs/api.md#methods_other – BudgieInWA

ответ

1

Я решил это не отключив кнопку, а вместо этого, проверив, заблокирован ли выбор в обработчике событий нажатия кнопки. Это хорошо работает, потому что внешний вид виджета и кнопки не должен меняться, когда выбор в любом случае заблокирован.

function myClickHandler(ev) { 
    if (mySelectize.isLocked) return; 

    // do stuff 
} 

Насколько я могу сказать, лучший способ отслеживать заблокированное состояние, как я первоначально намеревался бы написать плагин, который обеспечивает крючки для становится заблокирован и разблокирован. (Дайте нам знать, если вы найдете его!)

Смежные вопросы