powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Выпадающий список.
36 сообщений из 36, показаны все 2 страниц
Выпадающий список.
    #35098068
Сосна Наташа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет.Есть выпадающий список в виде таблицы,в ячейках которой содержатся года,как при нажатии на кнопку к примеру далее,записать в ячейки следующие года.Спасибо.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35098180
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Находим tbody и в нем по rows && cells
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
if(Ctrl=document.getElementById(id))
{
	Ctrl=Ctrl.getElementsByTagName("tbody");
	if(Ctrl.length)
	{
		for(var r= 0 ; r<Ctrl[ 0 ].rows.length; ++r)
			for(var c= 0 ; c<Ctrl[ 0 ].rows[r].cells.length; ++c)
				Ctrl[ 0 ].rows[r].cells[c].innerHTML=...;
	}
}
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Выпадающий список.
    #35098672
Сосна Наташа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо!Все работает.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35098890
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
Находим tbody и в нем по rows && cells

помнишь я говорил про кривой код? терпеть не могу любителей заниматься monkey typing. Код должен быть красивым и оптимальным
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
var tbl = document.getElementById(id);
if(tbl)
{
	for(var i= 0 , row; row=tbl.rows[i]; i++)
		for(var j= 0 , col; col=row.cells[j]; j++)
			col.innerHTML=...;
}
...
Рейтинг: 0 / 0
Выпадающий список.
    #35098934
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зы Код должен быть красивым и оптимальным
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
var tbl = document.getElementById(id);
if(tbl)
{
	for(var i= 0 , row; row=tbl.rows[i]; i++)
		for(var j= 0 , col; col=row.cells[j]; j++)
			col.innerHTML=...;
}


Я так понимаю, что лишние {} при if - это для красоты???
...
Рейтинг: 0 / 0
Выпадающий список.
    #35098958
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЯ так понимаю, что лишние {} при if - это для красоты???
для красоты и простоты понимания. У тебя неверное понятие оптимальности, если ты об этом.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35098971
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне код Ex_Soft нравится больше толко благодаря одной строке

if (Ctrl.length)

Понятно, что элемент полученный по ID может быть всем, чем угодно.
Что касается совмещения присваивания и проверки - тоже сомнительно, особенно по части наглядности.
Да и по защищенности программирвания. Свойство length - сдержит количеств элементов коллекции.
А obj[j] - опять же может содержать все,что угодно. Не принимаю Ваш код.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35098989
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да я тут смотрю у нас появился мастер яваскрипта, ну что ж, начнем порку
apapacyМне код Ex_Soft нравится больше толко благодаря одной строке
if (Ctrl.length)

безусловно зашибенная строчка. Проблема только в том что таблиц без tbody в понятиях браузера не существует.


Понятно, что элемент полученный по ID может быть всем, чем угодно.

кому понятно? мне не понятно, я не пишу бред под названием "универсальный" код, который умеет только заполнять табличку, но тем не менее позволяет передать ему любой элемент. Не бред ли? проблема не в функции а в твоей логике. Keep It Simple, Stupid.


Что касается совмещения присваивания и проверки - тоже сомнительно, особенно по части наглядности.

это ты об этом?
Ex_Soft
if(Ctrl=document.getElementById(id))

а бесконечные повторные обращения к индексаторам это круто?


Да и по защищенности программирвания.

это новое понятие в программировании? защищенность? что защищаем?

Свойство length - сдержит количеств элементов коллекции.

содержит, и что?

А obj[j] - опять же может содержать все,что угодно.
индексатор коллекции может вернуть все что угодно, ты в своем уме?

авторНе принимаю Ваш код.
ну понятно, скобочки просто вдруг не понравились, сочуствую. Не советую продолжать со мной в таком духе,пока не изучил хотя-бы основы данного языка
...
Рейтинг: 0 / 0
Выпадающий список.
    #35098993
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зыА obj[j] - опять же может содержать все,что угодно.
индексатор коллекции может вернуть все что угодно, ты в своем уме?
[/quot]

Не думал, что у Вас, как у знатока JavaScript, такая элеиментарщина вызовет непонятки.
Единственные объект в JavaScript который наращивает length при присваивании obj[j] = value -
это объект Array. В рассматриваемом случае с таблицей length вернет количество строк, например 5.
При этом можно присвоить rows[1001] = 1000+1 и это никак не повлияет на length. Просто добавится новое свойство, равное 1001.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35099006
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
apapacy
В рассматриваемом случае с таблицей length вернет количество строк, например 5.
При этом можно присвоить rows[1001] = 1000+1 и это никак не повлияет на length. Просто добавится новое свойство, равное 1001.
а теперь будь добр объясни всем, накой черт мне, как девелоперу этой функциональности, вдруг может понадобиться раскладывать себе грабли и присваивать какой-то 1001 первый элемент коллекции строк таблицы? у меня что, других названий больше не найдется для хранения моих данных? и то это приведет к так желаемому тобой результату только если в таблице уже есть 1001 строка.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35099245
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зы
таблиц без tbody в понятиях браузера не существует

Запускаем под мозилкой и M$ IE (у меня IE 6.0.2800.1106+SP1)
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Выпадающий список.
    #35099382
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. тынць , тынць
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Выпадающий список.
    #35100100
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft зы
таблиц без tbody в понятиях браузера не существует

Запускаем под мозилкой и M$ IE (у меня IE 6.0.2800.1106+SP1)

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

Ex_SoftP.S. тынць, тынць
и хватыть тынцать. Что там такого чего я не знаю? на что именно смотреть?

зы
таблиц без tbody в понятиях браузера не существует

ты все ещё имеешь что-то против этой фразы?
...
Рейтинг: 0 / 0
Выпадающий список.
    #35100425
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зы
хотел сказать

что HTMLCollection rows все-таки парафия TBODY /THEAD/TFOOT. И правильно на rows выходить с них. А не с TABLE, где rows представляет собой винегрет
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Выпадающий список.
    #35100815
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
что HTMLCollection rows все-таки парафия TBODY /THEAD/TFOOT. И правильно на rows выходить с них. А не с TABLE, где rows представляет собой винегрет

слушай, великорусский знаток, ещё раз попробую объяснить тебе и всяким "апапасикам" что значит писать оптимальный. Писать оптимальный код - это значит не писать всего того, что тебе заведомо не нужно. Есть ещё такой принцип YAGNI (you ain't gonna need it), он гласит, что если у тебя нет нужды прямо сейчас реализовывать дополнительный функционал, то и не надо этого делать, скорее всего тебе это не понадобится. НЕ надо писать универсальный код, если нигде кроме данной задачи ты его использовать не будешь. А в конкретной задаче тебе все ограничения известны, и ставить себе костыли ты вряд ли будешь.
Кроме того, бОольшая часть приведенного тобой куска кода - это, как я уже написал, пример monkey typing.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35100909
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зы
что тебе заведомо не нужно

ну что ж - тогда M$ IE вычеркиваем
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Выпадающий список.
    #35100984
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
ну что ж - тогда M$ IE
вычеркивай, ибо у меня везде работает :)
приведи свой код, или у тебя опять слова ни о чем?
...
Рейтинг: 0 / 0
Выпадающий список.
    #35100988
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эээ... какой-то прям непризнанный гений js тут у нас появился, обиженный низкой зарплатой, не иначе...

Ex_Soft
зы
что тебе заведомо не нужно

ну что ж - тогда M$ IE вычеркиваем
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4На каком основании, не хотите сообщить? Из двух тынцев и двух отсылок к собственному мутному посту не очеть-то ясно...
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101043
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Слейте attach и попробуйте: у меня в IE 6.0.2800.1106+SP1
Table.appendChild(tr); (напрямую без TBODY (function WOTBody(TableId))) - балалайка...
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101056
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Несомненно. Однако где в постановке задачи указана необходимость добавлять строки?

PS Аттач по дороге заблудился...
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101200
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
Слейте attach и попробуйте: у меня в IE 6.0.2800.1106+SP1
Table.appendChild(tr); (напрямую без TBODY (function WOTBody(TableId))) - балалайка...

а ты уверен что ты все правильно делаешь, любитель читать мануалы через строчку?:)
Код: plaintext
1.
2.
3.
4.
5.
6.
<table id="a" border="1" cellspacing="1" cellpadding="5">
	<tr><td>cell1</td></tr>
</table>
<script>
	var tbl = document.getElementById('a');
	tbl.insertRow(- 1 ).insertCell(- 1 ).innerHTML = 'cell2';
</script>
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101514
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy
Однако где в постановке задачи указана необходимость добавлять строки?

А Вы на шоколадку поспорите, что завтра это тоже не будет потребоваться? Просто, если говорить в контексте костыля+после_меня_хоть_потоп, то тогда я даже калорий тратить не буду. А, если, хоть на день вперед, то я свое мнение уже высказал . А как кто его принимает мне - безразлично.
Antonariy
Аттач по дороге заблудился...

Вы вообще не видите, что пост с attachment 'ом? (Просто за сегодня это уже второй случай) Или просто скачать не можете? Я только-что попробовал - скачался без проблем.
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101549
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
А Вы на шоколадку поспорите, что завтра это тоже не будет потребоваться?

типичный разговор не умеющего адекватно распределять свое время человека, а теперь перечитай ещё раз про YAGNI и KISS

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

Ex_Soft
Вы вообще не видите, что пост с attachment 'ом? (Просто за сегодня это уже второй случай) Или просто скачать не можете? Я только-что попробовал - скачался без проблем.

я вообще не вижу аттача
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101565
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ух ты емае, какой УЖАСНЕЙШИЙ код
Код: plaintext
1.
2.
3.
		if(!(tr=document.createElement("TR"))
			|| !(td=document.createElement("TD")))
			continue;
вот оно, "безопасное" программирование, которым так восторгается апапася. На всякий случай проверим, вдруг не сработает, а если каким-то чудом и не сработает - ну и хрен с ним, никому ничего не скажем.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101628
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я вообще не вижу аттача

_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101687
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Слейте attach и попробуйте: у меня в IE 6.0.2800.1106+SP1А аттач уже уехал далеко-далеко наверх. И отсылки наверх нет, даже косвенно. Не мудрено, что появляются вопросы: "Какой-такой аттач?".

Проехали.
А Вы на шоколадку поспорите, что завтра это тоже не будет потребоваться?То есть если вдруг кому-то могут понадобиться колесики на табуретке, все производители табуреток обязаны на всякий случай комплектовать их колесиками?
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101787
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зы
вот оно, "безопасное" программирование, которым так восторгается апапася.


Многоуважаемый Зы.
Все остальные программисты, кроме Вас, склонны писать программы с ошибками. Из которых наиболее распростарненными
являются
1. Утечка памяти
2. Обращение к несуществующим элементам массива.
3. "Неожиданное присваивание" в конструкциях типа
if (pryttyGirl = boodMonster)

Поэтому мы, бедные крестьяне, и не рискуем писать в Вашем стиле.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101803
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
apapacy
Многоуважаемый Зы.
Все остальные программисты, кроме Вас, склонны писать программы с ошибками. Из которых наиболее распростарненными
являются
1. Утечка памяти
2. Обращение к несуществующим элементам массива.
3. "Неожиданное присваивание" в конструкциях типа
if (pryttyGirl = boodMonster)
Поэтому мы, бедные крестьяне, и не рискуем писать в Вашем стиле.
ну что ж, ответь за свои слова, покажи мне решение всех трех проблем в куске кода выше :) а так же покажи мне хотя-бы одну проблему в моем исходном коде, который, как я помню, тебе очень понравился :)
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101882
apapacy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблемы в Вашем коде я уже показал. К ним отнсятся отсутсвие проверок на получаемый функцией
getElementById() элемент. Использование эквилибристики в проверке с присваиванием - второй потенциально опасные трюк.
И все то же пробегание по элементам массива "пока не пустой". Я это все уже Вам описал и Вы опять спрашиваете. Зачем я пишу тогда второй раз - все равно опять спросите.

Код Ex_softa содержит проверку на наличие length. Лучше было провверить конеретно тип элемента. То что У него же
коллекция перебирается до length элемента - единственно, что могу поставить в упрек, что он не взял левое ухо в правую руку, а сделал самый тривиальный код. Из которого на n-ное количество процентов состоит любая (не Ваша) программа.
...
Рейтинг: 0 / 0
Выпадающий список.
    #35101971
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[off]
Antonariy
И отсылки наверх нет, даже косвенно

Гм... Но процицировали
Вы правильно - значит и исходник содержит правильную ссылку ( http://www.sql.ru/forum/actualthread.aspx?tid=520458#5224604 ) на пост с attacment 'ом
Antonariy
все производители табуреток обязаны на всякий случай комплектовать их колесиками?

нЭт
Я бы сделал гораздо прозаичнее: предусмотрел бы посадочные места под колесики, а те, кто в них нуждается, без всякого геморроя установили бы их... Думаю, Вы знаете же от чего вымерли неандертальцы?..
зы
ведь для добавления строк ты будешь другую функцию писать, не так ли?

Все гораздо проще: достаточно в таблицу добавить THEAD/TFOOT и Table.rows идет лесом (там - attachment )

И вообще: "...все дальше и дальше уходим мы от дома..."
Как глянул по http - ужаснулся. А в news'ах как флейм-посты бесят. По сему предлагаю задвинуть хоть бы сюда или организовать здесь что-то а-ля "Курилка". Потому как, IMHO, будет чистый флейм - все равно каждый останется при своем мнении. Разве что так... Мобилками померяться или поправить свое ущемленое эго
...
[/off]
_________________
"Helo, word!" - 17 errors 56 warnings
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Выпадающий список.
    #35102909
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_SoftДумаю, Вы знаете же от чего вымерли неандертальцы?..КАК?! 0_0 Неужели их забили до смерти табуретками с местами под колесики?
...
Рейтинг: 0 / 0
Выпадающий список.
    #35104894
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
apapacyПроблемы в Вашем коде я уже показал. К ним отнсятся отсутсвие проверок на получаемый функцией
getElementById() элемент. Использование эквилибристики в проверке с присваиванием - второй потенциально опасные трюк.
бла-бла-бла

в общем все понятно, писать умеем, читать не очень. Суть я донести пытался, но, к сожалению, безуспешно. Как только напишешь хоть сколько-нибудь стоящий проект с весом исходников на JS в упакованном виде больше 400кб, обращайся. А пока - лесом, читать и учиться, а так же советую купить компьютер побыстрее, чтобы твой код на скрипте поменьше тормозил
...
Рейтинг: 0 / 0
Выпадающий список.
    #35104945
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
зы
ведь для добавления строк ты будешь другую функцию писать, не так ли?

Все гораздо проще: достаточно в таблицу добавить THEAD/TFOOT и Table.rows идет лесом (там - attachment)

вот ж балабол, я смотрю у тебя лесом идет уже все, закрывающиеся тэги и валидность HTML как класс тоже в лесу. Тем не менее вопрос ты пропустил. Короче прочитай заодно пост выше для апапаси и прими так же и на свой счет
...
Рейтинг: 0 / 0
Выпадающий список.
    #35104965
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
Все гораздо проще: достаточно в таблицу добавить THEAD/TFOOT и Table.rows идет лесом

кстати между сутью вопроса и твоими аргументами можно провести прямую аналогию:
- перед поездкой на велосипеде надо проверить давление в камерах
- зачем?? ведь достаточно рассыпать на дороге гвозди, и они все равно сдуются
...
Рейтинг: 0 / 0
Выпадающий список.
    #35105630
I_Work
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зы, хочу сказать, что даже ваш самый первый пример не является примером "красивого и оптимального кода", поскольку разобраться в нем гораздо сложнее, нежели в коде уважаемого Ex_soft. Одни только условия в циклах чего стоят. А это всего 7 строчек кода.

При вашем подходе, полагаю, большая часть вашего кода не может быть использована вообще более никем, да и вами тоже через пару месяцев, ибо где-нибудь возникнет неожиданно ноль в знаменателе или вместо одного объекта случайно попадется другой, а вы об этом и узнать-то сможете с трудом...
...
Рейтинг: 0 / 0
Выпадающий список.
    #35105863
зы
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
I_Workзы, хочу сказать, что даже ваш самый первый пример не является примером "красивого и оптимального кода", поскольку разобраться в нем гораздо сложнее, нежели в коде уважаемого Ex_soft. Одни только условия в циклах чего стоят. А это всего 7 строчек кода. При вашем подходе, полагаю, большая часть вашего кода не может быть использована вообще более никем, да и вами тоже через пару месяцев

это заблуждение тех, кто знает про программирования на яваскрипте на basic уровне. Описанный мной подход известен и широко используется. Философия яваскрипта отличается от других языков, причем довольно сильно. Кстати хотелось бы увидеть твой вариант, дабы убедиться что передо мной не очередной любитель поболтать :) ну а в остальном просьба не беспокоиться. Мой пост был исключительно для Ex_Soft и относился к нашим спорам из другой темы. Удивлен, что вдруг выползло так много "знатоков" :)
I_Work
ибо где-нибудь возникнет неожиданно ноль в знаменателе или вместо одного объекта случайно попадется другой, а вы об этом и узнать-то сможете с трудом...
javascript - это не строготипизированный язык с проверкой на этапе компиляции, в нем "ноль в знаменателе" может вылезти при любом подходе и в любом месте, если постараться. Так что твоя фраза и яйца выеденного не стоит. В общем случае у меня и моей команды таких проблем никогда не было, так что, судя по всему, это исключительно виртуальные проблемы присутствующих тут индивидуумов :)
...
Рейтинг: 0 / 0
36 сообщений из 36, показаны все 2 страниц
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Выпадающий список.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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