Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / getElementsByName с регуляркой / 13 сообщений из 13, страница 1 из 1
25.06.2013, 09:42
    #38309013
kaldorey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
Имеются элементы с именами с1,с2,с3,с4....
Количество динамическое. Можно ли сделать как-нибудь красиво, типа getElementsByName(/c\d+/)?
Или подскажите, как это лучше заделать?
...
Рейтинг: 0 / 0
25.06.2013, 09:44
    #38309015
kaldorey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
такое ужасное именование придумал не я)))))
...
Рейтинг: 0 / 0
25.06.2013, 10:04
    #38309044
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
Если у элементов есть name, то они скорее всего внутри form. Вот и перебирайте элементы формы.
...
Рейтинг: 0 / 0
25.06.2013, 11:42
    #38309195
Програмёр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
skyANAЕсли у элементов есть name, то они скорее всего внутри form. Вот и перебирайте элементы формы.

или определите для элементов общий класс и перебирайте их по классу.
...
Рейтинг: 0 / 0
25.06.2013, 11:52
    #38309220
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
kaldoreyтакое ужасное именование придумал не я)))))А кто? Не ASP.NET-ли?
Тогда, как советует Програмёр, CssClass спасёт Вас.
...
Рейтинг: 0 / 0
25.06.2013, 11:53
    #38309226
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
А что такое "элементы с именами"?
...
Рейтинг: 0 / 0
25.06.2013, 12:00
    #38309248
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
ShSergeА что такое "элементы с именами"?А что такое getElementsByName?
...
Рейтинг: 0 / 0
25.06.2013, 12:07
    #38309265
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
skyANA,

Я знаю, что ты знаешь, что я знаю... .
Но, вопрос был не к тебе. ;)
...
Рейтинг: 0 / 0
25.06.2013, 12:30
    #38309326
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
ShSerge, а это был наводящий вопрос.

А теперь, внимание, ответ:Поиск по name: getElementsByNameМетод document.getElementsByName(name) возвращает все элементы, у которых имя (атрибут name) равно данному.
Теперь понятно, что такое "элементы с именами"?
...
Рейтинг: 0 / 0
25.06.2013, 14:23
    #38309557
kaldorey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
Да это чекбоксы, сделал пока так - просто перебираю их на форме, нахожу чекнутые и провожу операции в цикле. Сразу так не хотелось, ибо у разрабов сего ресурса все завязано на этих корявых именах.

skyANA , этооракловый вебсервер страющего поколения))) Там html,js,css - все это внутри пакетов pl/sql вместе с бизнес-логикой)))) Вы когда нибудь пытались понять по содержимому, что съели на обед те, кто бросил какашки в вентилятор?
...
Рейтинг: 0 / 0
25.06.2013, 14:56
    #38309606
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
kaldorey,
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
<!DOCTYPE HTML>
<html>
<head></head>
<body>
<form>
    <input name="a1" type="checkbox"/>
    <input name="a2" type="checkbox"/>
    <input name="c1" type="checkbox"/>
    <input name="c2" type="checkbox"/>
    <input name="c3" type="checkbox"/>
    <input name="c100500" type="checkbox"/>
  </form>
  <script>
    var elementsThatStartWithA = document.querySelectorAll('[name^="a"]'),
        elementsThatStartWithC = document.querySelectorAll('[name^="c"]');
      
    alert("We have " + elementsThatStartWithA.length + " elements that start with A");
    alert("We have " + elementsThatStartWithC.length + " elements that start with C");
  </script>
</body>
</html>
...
Рейтинг: 0 / 0
25.06.2013, 15:05
    #38309618
Яростный Меч
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
skyANA
Код: html
1.
document.querySelectorAll('[name^="c"]')

не совсем кроссбраузерно, пока что.
а главное, [name^="c"] недостаточно строгий фильтр, имхо.

думаю, самый простой и разумный вариант - 14477888 - обойти form.getElementsByTagName('input') и проверить .name регекосом.
...
Рейтинг: 0 / 0
26.06.2013, 06:39
    #38310556
kaldorey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
getElementsByName с регуляркой
Яростный Меч,

Да, я так в конце концов и сделал, спасибо всем!
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / getElementsByName с регуляркой / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]