Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Двойное условие 
V
    Опции темы
Castro
Дата 5.10.2007, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 353
Регистрация: 31.8.2007
Где: Украина

Репутация: нет
Всего: 5



Возник вот вопрос: функция должна выполнять определённые действия(читать значения отрибутов  у элементов атрибуты ).
Но она должна пропускать  элементы и  которых установлено состояние disabled і не должна позволять читать значение value у всех disabled  элементов типа  input(зачем есть разрешение на это).
Сделал так
Код

<script>
this.getElementCount = function(doc, type, pattern, attr)
......

if (!formUtils.isDisabled(doc.forms[i].elements[j],attr)) {
                            if (doc.forms[i].elements[j].type.toLowerCase() == inputPar[k].toLowerCase()) {
                                allRequestedElementCount++;
                            }
                        }
.......
this.isDisabled = function (element,attr)
    {
        if(element.disabled || attr=="value")
        {
            return true;
        }
    return false;
    }
</script>

но помоему условие element.disabled || attr=="value" не правильно. Как правильно организовать 2е условие?? 


--------------------
user posted image
PM MAIL ICQ GTalk   Вверх
Pokoinik
Дата 5.10.2007, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 17.3.2007
Где: /dev/null

Репутация: 1
Всего: 3



в смысле не правильное?
с точки зрения синтаксиса?


--------------------
ICQ: 490-993
Существует только 10 типов людей: те, которые понимают двоичную систему, и которые ее не понимают!!!
Опасайтесь людей верующих, ибо у них есть боги, которые им все прощают.

Делай или не делай! Никаких попробую!
Йода (Yoda), мастер-джедай
PM MAIL ICQ   Вверх
Castro
Дата 5.10.2007, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 353
Регистрация: 31.8.2007
Где: Украина

Репутация: нет
Всего: 5



Внезапно пришла мысль:
Код

if(element.disabled || (attr=="value" && element.disabled))
Это будет правильно?

Добавлено через 3 минуты и 4 секунды
Нет. С точки зрения логики-если у меня передаётся атрибут value в самом начале, то элемент не подсчитается, потому что в проверке в isDisabled есть оператор "ИЛИ" и он выполниться полюбому. Надеюсь я  правильно понял суть того что творится в этой поверке


--------------------
user posted image
PM MAIL ICQ GTalk   Вверх
Pokoinik
Дата 5.10.2007, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 283
Регистрация: 17.3.2007
Где: /dev/null

Репутация: 1
Всего: 3



ну сам подумай...
твой код в ифе будет выполняться в следующих случаях
1. element.disabled == true
2. attr=="value"  и  element.disabled== true

при element.disabled== false код не выполнится



--------------------
ICQ: 490-993
Существует только 10 типов людей: те, которые понимают двоичную систему, и которые ее не понимают!!!
Опасайтесь людей верующих, ибо у них есть боги, которые им все прощают.

Делай или не делай! Никаких попробую!
Йода (Yoda), мастер-джедай
PM MAIL ICQ   Вверх
solenko
Дата 5.10.2007, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 9
Всего: 67



Что-то у вас в самой постановке не то.
Если элемент disabled, то не важно какой аттрибут мы читаем -- все равно функция не пропустит. 



--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Castro
Дата 5.10.2007, 14:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 353
Регистрация: 31.8.2007
Где: Украина

Репутация: нет
Всего: 5



Попродуйте и disabled елемента прочитать атрибут value- он прочитается ведь, а мне этого не нужно


--------------------
user posted image
PM MAIL ICQ GTalk   Вверх
dsCode
Дата 5.10.2007, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 565
Регистрация: 8.9.2007
Где: Saint-Petersburg

Репутация: 19
Всего: 26



Castro, логику сначала правильную опишите на словах (а после этого и сами условие напишите). А так - действительно, не важно - валуе не валую - проверка на дизаблед уже не будет обрабатывать элемент.
Цитата(Castro @  5.10.2007,  13:49 Найти цитируемый пост)
Но она должна пропускать  элементы и  которых установлено состояние disabled


if ( !element.disabled ) {
  // обрабатываем элемент
}


--------------------
the .code inside
:my music
PM MAIL WWW ICQ Jabber   Вверх
solenko
Дата 5.10.2007, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 9
Всего: 67



Цитата

должна пропускать  элементы и  которых установлено состояние disabled і не должна позволять читать значение value у всех disabled 

Второе условие может выполниться тольк если выполнено первое.
получается, что сначала запрещаем чтение любого аттрибута у disabled элементов.
Потом отдельным условием запрещаем читать value у disabled элементов.

В чем смысл?


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Castro
Дата 5.10.2007, 14:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 353
Регистрация: 31.8.2007
Где: Украина

Репутация: нет
Всего: 5



Смысл в том чтобы посчитать количество эелементов заданного типа и заданного атрибута(наприм у скольких кнопок атритубут value==OK)
НО! ИЗвините, только что понял что придумал велосипед. Использовал 
if ( !element.disabled ) {
  // обрабатываем элемент
} 
да и перестал парится. Дело втом что там было много кода разной вложености и я по наивности решил что проще решить так как я решил. К тому же просили сделать эту порверку отдельной функциейОно конечно работает, но зачем усложнять себе жизнь! Спасибо

Это сообщение отредактировал(а) Castro - 5.10.2007, 14:37


--------------------
user posted image
PM MAIL ICQ GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0460 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.