Проблема с выводом
Добрый день.
Пытаюсь при вызове события oninput вывести в блок output определенные данные. Alert работает нормально, то есть событие само вызывается. И отдельно вывод в этот блок тоже работает. А вот при вызове события данные не заносятся. Вот код: <div class="live_search"> <p>Номер 1</p> <input type="text" autocomplete="off"> <div class="output"></div> </div> <br> <div class="live_search"> <p>Номер 2</p> <input type="text" autocomplete="off"> <div class="output"></div> </div> $(document).ready(function(){ var live_search = $('.live_search'); for(var element in live_search){ $(element).find('input').on('input',function(){ $(element).find('.output').text('Что то ввели в поле ввода.'); alert('Произошло событие oninput.'); }); $(element).find('.output').text('Проверка вывода в блок #output.'); } }); |
Khalilbeg,
:cray: учите доку- пока не выучили неиспользуйте for в jquery - а лучше воспользуйтесь each; <!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script> <script> $(function () { var live_search = $('.live_search'); live_search.each(function(indx, element){ $('input', element).on('input',function(){ $('.output', element).text('Что то ввели в поле ввода.'); alert('Произошло событие oninput.'); }); $('.output', element).text('Проверка вывода в блок #output.') }); }) </script> </head> <body> <div class="live_search"> <p>Номер 1</p> <input type="text" autocomplete="off"> <div class="output"></div> </div> <br> <div class="live_search"> <p>Номер 2</p> <input type="text" autocomplete="off"> <div class="output"></div> </div> </body> </html> |
Спасибо большое :) . Не думал что jquery своеобразно реализовывает for.
|
Цитата:
чему будет равен var element когда закончится цикл for по теме помедитируйте тут http://javascript.ru/basic/closure#p...-ispolzovaniya each как раз позволяет незадумываться о сохранении контекста |
Спасибо еще раз. Но в обычном (не веб) программировании подобной проблемы нет, поэтому об этом даже не задумывался.
|
Часовой пояс GMT +3, время: 02:51. |