Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.10.2014, 08:53
Аспирант
Отправить личное сообщение для Mick_20 Посмотреть профиль Найти все сообщения от Mick_20
 
Регистрация: 05.06.2012
Сообщений: 34

много повторяющихся условий
Здравствуйте!
У меня в скрипте идет 60! одинаковых условий.
Меняются только циферки.

Вот как они выглядят(на примере трех):
if (answ.charAt(0)=="1") {document.getElementById('otvet1').style.backgroundColor = "#afa"; document.getElementById('otvet1').innerHTML = "Верно";} 
	else {document.getElementById('otvet1').style.backgroundColor = "#faa";  document.getElementById('otvet1').innerHTML = "Не верно";};
	if (answ.charAt(1)=="1") {document.getElementById('otvet2').style.backgroundColor = "#afa"; document.getElementById('otvet2').innerHTML = "Верно";} 
	else {document.getElementById('otvet2').style.backgroundColor = "#faa";  document.getElementById('otvet2').innerHTML = "Не верно";};
	if (answ.charAt(2)=="1") {document.getElementById('otvet3').style.backgroundColor = "#afa"; document.getElementById('otvet3').innerHTML = "Верно";} 
	else {document.getElementById('otvet3').style.backgroundColor = "#faa";  document.getElementById('otvet3').innerHTML = "Не верно";};


Как сделать эту проверку одним универсальным условием?
Ответить с цитированием
  #2 (permalink)  
Старый 27.10.2014, 08:58
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Цикл for. Видишь у тебя циферки меняются: 0, 1, 2. Вот и меняй их в цикле.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 27.10.2014, 11:01
Аспирант
Отправить личное сообщение для Mick_20 Посмотреть профиль Найти все сообщения от Mick_20
 
Регистрация: 05.06.2012
Сообщений: 34

Чтот не фурычит((

var z=1;
for(var i=0; i<15; i++) {
			if (answ.charAt([i])=="1") {document.getElementById('otvet[z]').style.backgroundColor = "#afa"; document.getElementById('otvet[z]').innerHTML = "Верно";} 
			else {document.getElementById('otvet[z]').style.backgroundColor = "#faa";  document.getElementById('otvet[z]').innerHTML = "Не верно";};
			z+=1;
}
Ответить с цитированием
  #4 (permalink)  
Старый 27.10.2014, 11:24
Аспирант
Отправить личное сообщение для CiliZ Посмотреть профиль Найти все сообщения от CiliZ
 
Регистрация: 04.01.2013
Сообщений: 34

for (var i = 0; i < 15; i++) {
    var element = document.getElementById('otvet' + (i + 1)), chAtEq = answ.charAt([i]) == "1";
    element.style.backgroundColor = chAtEq ? "#afa" : "#faa";
    element.innerHTML = chAtEq ? "Верно" : "Не верно";
}
Ответить с цитированием
  #5 (permalink)  
Старый 27.10.2014, 11:33
Аспирант
Отправить личное сообщение для Mick_20 Посмотреть профиль Найти все сообщения от Mick_20
 
Регистрация: 05.06.2012
Сообщений: 34

ого)
работает ))

спасибо большое)
Ответить с цитированием
  #6 (permalink)  
Старый 27.10.2014, 14:29
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Вместо 15 наверно надо answ.length
Или ответов всегда ровно 15?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #7 (permalink)  
Старый 28.10.2014, 03:24
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,719

Этот цикл надо прогнать один раз в начале, увязять данные с интерфейсом и затем только клацать.
Ответить с цитированием
  #8 (permalink)  
Старый 28.10.2014, 08:41
Аспирант
Отправить личное сообщение для Mick_20 Посмотреть профиль Найти все сообщения от Mick_20
 
Регистрация: 05.06.2012
Сообщений: 34

danik.js, Ответов всегда 15 т к проверка есть что на все вопросы ответили.

kostyanet, Да если б я умел я бы сделал по человечески конечно. Спасибо мб когда-нибудь...
Ответить с цитированием
  #9 (permalink)  
Старый 28.10.2014, 09:24
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

kostyanet, какие данные?
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Много select-ов и много кнопок eFusion Элементы интерфейса 2 18.04.2014 22:35
Много js функций получается Evgeny_Dedov jQuery 4 15.07.2013 14:17
Как красиво писать много условий в ифах? godofjavascript Оффтопик 12 14.12.2012 20:58
Через ajax отправить много данных из таблицы на сервер Heger jQuery 3 29.08.2012 17:51
Чудеса математики js при padding borovik Элементы интерфейса 6 09.07.2011 21:02