Официальный сайт студ.городка НГТУ
Программирование и БД » [JavaScript] Создание массива из пропертей элементов "на лету" 

#1  18.12.06 13:02

[JavaScript] Создание массива из пропертей элементов "на лету"

Можно ли такое сделать, например есть набор чекбоксов с одинаковыми именами. Нужно создать массив в котором будут содержаться например их id

Offline

#2  18.12.06 14:28

Maq
Профиль

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

что мешает просто перебрать элементы на странице, выбирать нужные и писать в массив?

Offline

#3  18.12.06 14:45

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

время перебора, к тому мне нужны все элементы с зарание известным name

Offline

#4  18.12.06 14:56

Maq
Профиль

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

подумай лучше!
во-первых, перебор очень быстрый так как там элементов не тысячи же? тем более если они в форме то еще проще.
во-вторых, зачем заранее знать имена? можно искать одинаковые и/или просто по свойствам элемента, например что это чек бокс

Offline

#5  18.12.06 15:04

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

а

Код::

document.getElementsByName("имярек");

, например ,чем тебя такое решение не устраивает?

Offline

#6  18.12.06 15:08

Maq
Профиль

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

понял что тебе нужно)))
смотри исходники страницы http://hostel.nstu.ru/message_list.php
а после отправки $_POST['delete_messages'] обрабатывается как обычный массив

Offline

#7  18.12.06 15:43

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

нет, не то. Смысл вообщем такой. Нужно сделать на странице поиск нужной филды по служебной проперти. Наиболее быстрый способ сделать индексный массив, так как перебирать все филды при каждом запросе очень долго. Массив должен создаваться либо при загрузке, либо при первом поиске. Но если подхватить элементы при помощи getElementsByName то их нужно перебирать и создавать массив, а это долго, так как элеменов очень много. Изначально массив создавался при помощи скрытого служебного поля на странице, но из-за ограниченности размера данных, помещаемых в поле типа text, всего 32кб (ограничение lotus script), вариант был отброшен, так как при поиске элементов в представлении отсортированном по имени индексный массив получился аж 54кб.

Вообщем всем спасибо за ответы. Реализовал поиск методом дихотомии (половинного деления).

Offline

#8  18.12.06 16:15

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

Укроп написал(а):

A-Lex написал(а):

мне нужны все элементы с зарание известным name

помнишь был шуточный скрипт, который вставлялся в строку броузера и заставлял прыгать все картинки? я его счас никак найти не могу, так бы привел пример.. он пробегал тут на хостеле пару раз, плюс на развлек сайтах тоже, если поспрашиваешь - найдешь.
там тоже элементы заранее не известный, однако он как то обращается по id

Это не я бляяя...

Offline

#9  18.12.06 16:22

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

респект, я знаю где на него ссылка сохранилась :)

Offline

#10  18.12.06 17:21

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

Укроп написал(а):

A-Lex, выложи сюда тоже заценю

Это не я бляяя...

Offline

#11  21.12.06 14:39

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

вот код, естественно разрывы строк для читаемости стоят

Код: javascript:

javascript:
R=0;
x1=.1;
y1=.05;
x2=.25;
y2=.24;
x3=1.6;
y3=.24;
x4=300;
y4=200;
x5=300;
y5=200;
DI=document.images;
DIL=DI.length;
function A(){
	for(i=0;i<DIL;i++){
		DIS=DI[i].style;
		DIS.position='absolute';
		DIS.left=""+Math.floor(Math.sin(R*x1+i*x2+x3)*x4+x5)+"px";
		DIS.top=""+Math.floor(Math.cos(R*y1+i*y2+y3)*y4+y5)+"px";
	}
	R++;
}
setInterval('A()',5);
void(0);

Offline

#12  22.12.06 10:41

Re: [JavaScript] Создание массива из пропертей элементов "на лету"

не работает, зараза

Offline

Программирование и БД » [JavaScript] Создание массива из пропертей элементов "на лету" 

ФутЕр:)

© Hostel Web Group, 2002-2025.   Сообщить об ошибке

Сгенерировано за 0.045 сек.
Выполнено 14 запросов.