2016-11-24 3 views
0

Я понимаю, что распространение события можно остановить, например, с помощью event.stopPropagation() в событии «click». Я не понимаю, может ли в моем случае сделать что-то подобное, чтобы предотвратить распространение.Как предотвратить распространение события окна ввода при изменении значений?

У меня есть событие по умолчанию переплетена в текстовые поля, когда есть вход в него:

$('#inputbox').on('input', function() { 
     // something 
     } 

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

$('#inputbox').val(values); 

Приведенный выше код запускает событие ввода. Как я могу использовать функцию stopPropagation() в таком случае (с функцией .val())? Я хочу избежать функции .on('input'), не меняя ее.

+0

$ ('# InputBox) .он (' 'вход», функция() {}) –

ответ

1

Попробуйте это:.

$('#inputbox').on('input', function (event) { 
    event.stopPropagation();//for internet explorer 
    event.preventDefault();//for chrome/firefox 
}); 
+0

Я не хочу, чтобы изменить определение события, я просто хочу в конкретный случай, чтобы не заходить в него. – kaycee

+1

Можете ли вы уточнить, какой случай? –

+0

Я хочу, чтобы текстовое поле вызывало событие по умолчанию все время, за исключением случаев, когда я ему говорю. Я просто не знаю, как сказать ему не без изменения определения события – kaycee

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

  • Нет связанных вопросов^_^