Динамическое создание обработчиков
Доброго времени суток. С тех пор как убради .live() начались головняки... Его типа заменили на .on() . Как вешать обработчики для созданных элементов не пойму??? Вроде и пытаюсь юзать on, но он вешает на уже имеющиеся элементы, а на созданные не вешает. Инфы по этому вопросу в инете не нашел. Прошу вас расскажите как правильно использовать .on() для динамически созданных элементов.
jQuery(".decimal").on('keydown', function(event) { // Разрешаем: backspace, delete, tab и escape if ( event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || // Разрешаем: Ctrl+A (event.keyCode == 65 && event.ctrlKey === true) || // Разрешаем: home, end, влево, вправо (event.keyCode >= 35 && event.keyCode <= 39)) { // Ничего не делаем return; } else { // Обеждаемся, что это цифра, и останавливаем событие keypress if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105 )) { event.preventDefault(); } } }); |
|
jQuery(".decimal").on('keydown', '.decimal', function(event) { // Разрешаем: backspace, delete, tab и escape if ( event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || // Разрешаем: Ctrl+A (event.keyCode == 65 && event.ctrlKey === true) || // Разрешаем: home, end, влево, вправо (event.keyCode >= 35 && event.keyCode <= 39)) { // Ничего не делаем return; } else { // Обеждаемся, что это цифра, и останавливаем событие keypress if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105 )) { event.preventDefault(); } } }); Типо вот так? Что то не работает... |
Прошу покажи пожалуйста на примере... Я что то туплю...
|
jQuery(document).on('keydown', '.decimal', function(event) { // Разрешаем: backspace, delete, tab и escape if ( event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || // Разрешаем: Ctrl+A (event.keyCode == 65 && event.ctrlKey === true) || // Разрешаем: home, end, влево, вправо (event.keyCode >= 35 && event.keyCode <= 39)) { // Ничего не делаем return; } else { // Обеждаемся, что это цифра, и останавливаем событие keypress if ((event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105 )) { event.preventDefault(); } } }); |
АААААА на документ нужно вязать... Вот теперь дошлоооо. Спасибо тебе друг!!!! Очень помог. держи + к карме)
|
Кирюха =),
не на документ, а на любой не динамический элемент, являющийся родителем. |
Часовой пояс GMT +3, время: 21:12. |