Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   существует элемент или нет? (https://javascript.ru/forum/dom-window/4070-sushhestvuet-ehlement-ili-net.html)

зверек 19.06.2009 17:52

существует элемент или нет?
 
Как правильно сделать запись имеющую следующий смысл:

If (document.form1.sel6.value!== undefined) document.form1.sel6.value='-';

Ну то есть если данный элемент в принципе существует на странице (в данном случае селект, имя которого sel6), то он используется, а если его не существует, то соответственно не используется.

В силу отсутствия достаточных знаний языка я просто понятия не имею как это сделать. А сделать надо поскорее :(

Заранее спасибо!

Kolyaj 19.06.2009 17:57

if (document.form1.sel6)
    document.form1.sel6.value = '-';

зверек 19.06.2009 18:29

Не получается.
document.form1.sel6 есть null или не является объектом - такая ошибка наблюдается.

Gvozd 19.06.2009 18:33

Цитата:

Сообщение от зверек
Не получается.

должно работать
покажите полный код страницы, с убранным лишним кодом

зверек 19.06.2009 18:37

Идея изначально такая. Есть некий блок с селектами.
При клике на некий селект из нескольких селектов, присутвующих на странице происходит событие

onchange=\"if(this.value!='-' && this.value!=0){
document.form1.sel2.value='-';
document.form1.sel3.value='-';
document.form1.sel4.value='-';
document.form1.sel5.value='-';
document.form1.sel6.value='-';
}\"";

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

Gvozd 19.06.2009 18:42

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

И еще:
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[js]
... ваш код...
[/js]


О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

Riim 20.06.2009 03:41

if (document.form1 && document.form1.sel6)
    document.form1.sel6.value = '-';

зверек 22.06.2009 12:26

Цитата:

Сообщение от Gvozd (Сообщение 22469)
Повторюсь, что код, вам предложенный должен работать.
Покажите как вы его пытаетесь применить, опубликовав HTML-страничку с локализованной проблемой, то есть только самое необходимое, чтобы мы могли оценить, почему у вас не получается применить код предложенный вам.

Пока делала тестовую страницу, разобралась почему в оригинале не работало. Просто невнимательность. А предложенное условие действительно работает.
Спасибо!!!

Gvozd 22.06.2009 12:36

Цитата:

Сообщение от зверек
Пока делала тестовую страницу, разобралась почему в оригинале не работало.

на это и был расчет)))
пожалуйста


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