Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: jquery - не запускается функция
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » jquery - не запускается функция

Страниц (1): [1]
 

1. Арикус - 29 Июля, 2015 - 11:29:03 - перейти к сообщению
С помощью функции jquery успешно создан <select>:
CODE (javascript):
скопировать код в буфер обмена
  1. $("#changeCont1").append('<br /><br /> <select class="inputBlue" form="askForm" name="sel1" size="1"></select>');
  2. $('#changeCont1 select[name="sel1"]').append('<option value="1" selected="selected" class="textGreen"> ... </option>');
  3. $('#changeCont1 select[name="sel1"]').append('<option value="2" class="textRed"> ... </option>');

Далее есть функция, которая должна запускаться при изменении этого <select>:
CODE (htmlphp):
скопировать код в буфер обмена
  1. $('#changeCont1 select[name="sel1"]').on("change", function(){
  2. alert('Функция работает');
  3. return false;  
  4. });

Почему при выборе другой <option> эта функция не запускается?
2. Viper - 29 Июля, 2015 - 12:03:46 - перейти к сообщению
http://jsfiddle[dot]net/2thLkruu/
3. exlant - 29 Июля, 2015 - 16:03:39 - перейти к сообщению
Потому что твои элементы еще не созданы на момент вешанья на них события,
Вот так будет работать
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. $(function(){
  3.     $('#changeCont1').on("change", "select[name='sel1']",  function(){
  4. alert('Функция работает');
  5. return false;  
  6. });
  7.  
4. IllusionMH - 29 Июля, 2015 - 16:09:58 - перейти к сообщению
Арикус, изучите делегирование событий и примеры работы .on в jQuery

 

Powered by ExBB FM 1.0 RC1