[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Пршла ли выборка элемента.
Shkiper
Вот смотрите. У меня есть файл JS который подключается практически ко всем страницам и модулям сайта. Допустим подключил я его на странице с новостью и там форма для добавления комментариев. И в скрипте пишется выборка элемента document.getElementById(id) на него вяжеться событие по клику на Добавить коментарий и потом проверяется на пустоту поля для комментов. Так вот это только для 1 модуля новостей. Допустим если я такое же буду делать в скрипте регистрации то поплывут ошибки, т.к. файл скрипта 1 а вот действия по клику в нем разные. Так вот если я нахожусь на странице регистрации а там код который будет использован в комментах и тут. Допустим у кнопки в комментах id=comment_submit и в скрипте идет выборка по этому айдишнику, и вот первая ошибка и потом то что пойдет далле порушиться и не будет работать. Я вот что полумал может есть такая иерхия чтоб можно было проверять прошли ли выборка элемента по айди или нет. спрсил у вас чтоб лишний раз не изобретать велосипед.



Спустя 3 минуты, 10 секунд (10.07.2012 - 18:34) redreem написал(а):
Цитата
document.getElementById(id)


100% выдаст ошибку и запорет дальнейшее выполнение скрипта, если id нет на странице. используй try {} catch {} в этом случае

Спустя 5 минут, 56 секунд (10.07.2012 - 18:40) Shkiper написал(а):
Цитата
используй try {} catch {} в этом случае

А шо это такое huh.gif huh.gif ohmy.gif ohmy.gif Ладно полистаю мануал ohmy.gif Жду еще предложения

Спустя 1 час, 7 минут, 46 секунд (10.07.2012 - 19:48) bodja написал(а):
Shkiper
определяйте отсутствие элемента с ид как написал redreem ,
или и так
if(document.getElementById(id)){}


А вообще подобные тупики приводят к изменению в подходах программирования и пониманию ,что ты до этого писал говнокод :D ,так что полезно почаще задаватся подобными вопросами.

Спустя 1 час, 53 минуты, 36 секунд (10.07.2012 - 21:41) Shkiper написал(а):
Цитата
Цитата
if(document.getElementById(id)){}

Если б этот метод работал я бы сюда не писал.
Цитата
А вообще подобные тупики приводят к изменению в подходах программирования и пониманию ,что ты до этого писал говнокод biggrin.gif ,так что полезно почаще задаватся подобными вопросами.

Приведи пример.

Спустя 9 часов, 23 минуты, 17 секунд (11.07.2012 - 07:05) Michael написал(а):
Цитата (Shkiper)
спрсил у вас чтоб лишний раз не изобретать велосипед.

ответ прост - на странице должны подключаться только те js скрипты, которые на ней нужны, а не какие то с других страниц. Ну может за исключением библиотек и плагинов, которые не привязаны к конкретному функционалу страницы.

Спустя 49 минут, 25 секунд (11.07.2012 - 07:54) Shkiper написал(а):
Michael придеться так и делать smile.gif

Спустя 7 часов, 4 минуты, 12 секунд (11.07.2012 - 14:58) ApuktaChehov написал(а):
Можно разработать парсер форм.
Скрипт которому будет передаваться форма. Скрипт обходит все элементы формы и формирует данные в стиле ключ - значение.

Но это для автоматизации. Можно поломать голову несколько часов, но зато потом формировать формы в виде JSON или POST в 2 счета.

Но это уже реализовано, например в JQ.

Спустя 8 минут, 18 секунд (11.07.2012 - 15:07) Shkiper написал(а):
JQUERY мне не нужен, я перешел на чистый Джаваскрипт

Спустя 9 минут, 58 секунд (11.07.2012 - 15:16) ApuktaChehov написал(а):
Перешел? Думаю, что с чистого стоило начинать, а как станете мега-отцом чистого жс, тогда можно и JQ юзать.

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

Ну тогда 2 варианта, либо для каждой страницы грузить свой JS, либо бделать унифицированный код, который будет работать с любыми формами.

Спустя 19 минут, 13 секунд (11.07.2012 - 15:36) Shkiper написал(а):
Да я уже решил к определенной странице отдельный файл грузить. Там то файлов не много да и весят не более 2 б. Не то что JQ rolleyes.gif

Спустя 33 секунды (11.07.2012 - 15:36) Shkiper написал(а):
Да и скоро выложу аналог функции dialog в JQ UI на чистом JS.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.