| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Применение библиотек > Вытащить Value из input через jQuery |
| Автор: Innuendo108 1.10.2009, 00:02 | ||
в обычном яваскрипте код выглядит так:
Как это сделать на jQuery? если я делаю var group = $("#gr").value, то group принимает значение undefined. |
| Автор: unicross 1.10.2009, 00:07 | ||
|
| Автор: skyboy 1.10.2009, 09:47 | ||||
а все потому, что выполнение jQuery('<выражение>') возвращает не один DOM-элемент, а коллекцию объектов типа jQuery. чтоб получить доступ к DOM-свойствам, надо либо: 1. а. получить конкретный DOM-элемент при помощи get():
б. пройтись функцией по всей коллекции:
2. искать в http://docs.jquery.com/ эквиваленты нужных тебе DOM-функций(вот, как привел пример unicross с метдом val(), который будет работать не только для input'ов, но и select'ов с textarea'ми). второй вариант, конечно, получше будет: jQuery мощная платформа и использовать её только для поиска элемента - преступление. |
| Автор: InfMag 2.10.2009, 14:42 | ||||
|
| Автор: skyboy 7.10.2009, 14:49 |
затем, что jQuery вернет не DOM элемент, а объект jQuery. и чтоб получить доступ к DOM-свойствам, надо вызывать get(). разве нет? да, в случае с jquery-методами val() отлично скрывает работу с DOM-функциями. И я привел методы доступа к свойствам/методам DOM только затем, чтоб объяснить - jQuery('#gr') возвращает не HTMLNode, а jQuery-объект и если уж сильно хочется работать с DOM, надо делать дополнительные телодвижения. |
| Автор: Kuznec 30.9.2013, 16:15 |
Ага, использовал ранее attr. Видимо долго не программил на jQuery. Поднял ранее начавший проект, увидел, что вышли новые версии jQuery & UI. Подсоединил. Перестала функция attr('value') считывать текст, введённый с клавиатуры. Заменил jQuery & UI на старый - заработало. На последние - нет. Так и решил вставить get(0).value - теперь работает. Что за глюк такой... Вот так потом решишь обновить библиотеку, ещё что-нибудь отвалится. |
| Автор: InfMag 30.9.2013, 20:53 | ||
Некропостинг в тему 4-лётней давности однако) А вообще может имеет смысл .val() использовать, а не .attr('value'), по-назначению так сказать? |
| Автор: Kuznec 4.10.2013, 12:40 | ||
Да, потом так и сделал. |