Я использую метод jquery ui для закрытия. Таким образом, я могу закрыть его на основе переменной selected
, которую я устанавливаю.Как правильно переопределить jquery ui autocomplete?
var originalCloseMethod = $input.data("autocomplete").close();
$input.data("autocomplete").close = function(event) {
if (!selected){
originalCloseMethod.apply(this, arguments);
}
selected = false;
};
Он отлично работает кроме, когда ему нужно сделать регулярное ближе. Например, если я выхожу за пределы div автозаполнения. API затем призывает закрыть и возвращает это:
originalCloseMethod неопределен
Что заставляет меня понять, что это вызов этого метода внутренне внутри UI.
Вот почему я предполагаю, что лучший способ написать этот код - расширить интерфейс, чтобы не просто переопределить его.
Мой вопрос в том, как применить этот же метод как расширение, а не переопределение?
Вы не хотите, чтобы это было: 'вар originalCloseMethod = $ input.data ("autocomplete"). закрыть; ' – gdoron
? Это то, что у меня есть, не так ли? – Trip
Нет. Вы вызываете функцию «закрыть» и сохраняете ее возвращаемое значение, не сохраняя ссылку на него ... – gdoron