Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Доступ к элементам с нетривиальными id (https://javascript.ru/forum/jquery/7462-dostup-k-ehlementam-s-netrivialnymi-id.html)

shulya 02.02.2010 21:19

Доступ к элементам с нетривиальными id
 
Добрый вечер

Помогите нубу с такой проблемой:
у меня есть следующая форма:
<input type=text value="This is name 1" name="f[name][1]" id="name_1">
<input type=text value="This is name 2" name="f[name][2]" id="f[name][2]">

Существенное отличие этих двух элементов только в id - в первом он без использования спецсимволов, во втором - с использованием.

Собственно вопрос: как мне получить в скриптах доступ ко второму элементу так же как я получаю к первому: alert($("#name_1").val())
Вариант alert($("#f[name][2]").val()) не работает наверное из-за того что я использую квадратные скобки в идентификации этого поля...

Полный пример тут:
http://jquery.newagelab.com.ua/test.html

B@rmaley.e><e 02.02.2010 22:23

Используйте обычный JS
alert($(document.getElementById("f[name][2]")).val())

shulya 02.02.2010 22:29

Вариант :write:

Gvozd 02.02.2010 23:00

в jQuery для этого предполагается кажется экранировать квадратные скобки
alert($("#f\[name\]\[2\]").val())

shulya 02.02.2010 23:56

Цитата:

Сообщение от Gvozd (Сообщение 43305)
в jQuery для этого предполагается кажется экранировать квадратные скобки
alert($("#f\[name\]\[2\]").val())

Не работает...

Gvozd 03.02.2010 00:17

Цитата:

Сообщение от shulya
Не работает...

а так? ;)
alert($("#f\\[name\\]\\[2\\]").val())

где-то я читал, только не помню как тама правильно было написано

Karandash 12.02.2010 21:22

У меня похожий вопрос.
Я программно получаю id элемента формы, но когда пытаюсь обратиться по имени из переменной, объект не захватывается.
Например
s=1;
alert($("#"+s).attr("id"));
Получается должен выдать тотже id, но уже из объекта, но выходит null.

Gvozd 12.02.2010 21:41

id не может начинатся с цифры.


Часовой пояс GMT +3, время: 21:00.