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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: jQuery: получение id изменяемого поля

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Aricus
Отправлено: 22 Декабря, 2014 - 16:14:54
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Апр. 2014  


Помог: 0 раз(а)




CODE (javascript):
скопировать код в буфер обмена
  1. var $img = $('#tableFiles tr td:first-child input');
  2. $img.on("change", function(event){
  3. ...
  4. });

Под параметры поиска переменной $img попадает несколько объектов. Мне нужно после вызова события (внутри функции) получить .attr('id') именно того поля, которое было изменено. Как это можно сделать?
 
 Top
OrmaJever
Отправлено: 22 Декабря, 2014 - 16:18:30
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




event.target это изменённое поле


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Aricus
Отправлено: 22 Декабря, 2014 - 16:27:05
Post Id



Частый гость


Покинул форум
Сообщений всего: 245
Дата рег-ции: Апр. 2014  


Помог: 0 раз(а)




На это он ругается:
CODE (javascript):
скопировать код в буфер обмена
  1. alert(event.target.attr('id'));

Unhandled Error: 'event.target.attr' is not a function
Я подумал, может знак $ нужен, но тоже нет:
CODE (javascript):
скопировать код в буфер обмена
  1. alert($event.target.attr('id'));

Unhandled Error: Undefined variable: $event
 
 Top
skiphog
Отправлено: 22 Декабря, 2014 - 17:10:29
Post Id



Частый гость


Покинул форум
Сообщений всего: 139
Дата рег-ции: Дек. 2014  
Откуда: Киров, Россия


Помог: 11 раз(а)




Вытащить ID импута, который был изменен.
CODE (javascript):
скопировать код в буфер обмена
  1. $('#tableFiles').on('change','input',function(){
  2.  alert(this.id);
  3. });

(Отредактировано автором: 22 Декабря, 2014 - 17:11:45)

 
My status
 Top
IllusionMH
Отправлено: 22 Декабря, 2014 - 19:00:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




Aricus, потому что стоит учитывать что не все в JS является jQuery объектами. В том числе и this и event.target. И прежде чем пытаться вызывать сугубо jQ методы, следует сначала оборачивать их в $(element).

Самое адекватное решение ответ уже дал skiphog
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB