Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Не работает if .checked (https://javascript.ru/forum/misc/55143-ne-rabotaet-if-checked.html)

qwe88 15.04.2015 18:06

Не работает if .checked
 
Добрый день!
Подскажите, пожалуйста, почему не работает:
<script type="text/javascript">
	var che = document.getElementById("snyatlen1");
	var che2 = document.getElementById("men1");
	if(che.cheked == true){
		che2.className="vib2"
	}
	else{
		che2.className="vib1"
	}
</script>

<input type="checkbox" id="snyatlen1" />

<div class="vib1" id="men1"></div>

Safort 15.04.2015 18:15

Потому, что у тебя опечатка. Не cheked, а cheсked нужно)

рони 15.04.2015 18:16

qwe88,
потому что элементов ещё нет

theKingOfJava 15.04.2015 18:19

cheked/checked

ЗЫ и да, померяй местами js c html, как рони сказал

qwe88 15.04.2015 19:08

Поставил, но все равно не работает

<input type="checkbox" id="snyatlen1" />

<div class="vib1" id="men1"></div>


<script type="text/javascript">
var che = document.getElementById("snyatlen1");
var che2 = document.getElementById("men1");
if(che.checked == true){
che2.className="vib2"
}
else{
che2.className="vib1"
}
</script>

laimas 15.04.2015 19:18

<html> 
<head> 
<style>
.vib1 {
    color: #f00;
}
.vib2 {
    color: #0f0;
}
</style> 
</head> 

<body>
<input type="checkbox" id="snyatlen1" />
<div class="vib1" id="men1">Text</div>

<script type="text/javascript">
    document.getElementById("men1").className = document.getElementById("snyatlen1").checked ? "vib2" : "vib1";
</script>
</body> 
</html>

Что не работает? Если это по загрузке, будет работать, если при смене флажка, то не будет, нужно изменять стиль по щелчку еще.

qwe88 15.04.2015 19:21

У меня ваш пример почему-то не работает.
А через if все-таки нельзя решить?

Decode 15.04.2015 19:24

qwe88, http://jsbin.com/pusecavonu/1/edit?html,output

laimas 15.04.2015 19:32

Цитата:

Сообщение от qwe88 (Сообщение 366817)
У меня ваш пример почему-то не работает.
А через if все-таки нельзя решить?

А условная запись это разве не задание условия?

theKingOfJava 15.04.2015 19:33

qwe88,
Все там работает
<html>
<head>
<meta charset="windows-1251" />
<style>
.vib{background: yellow}
.vib1{background: red}
.vib2{background: green}
</style>
</head>
<body>

<input type="checkbox" id="snyatlen1" />
<div id="info"></div>
<div class="vib" id="men1">foo</div>


<script>

c=5
stop=setInterval(function(){info.innerHTML="До изменения осталось "+(--c)+" секунд."}, 1000)

    var che = document.getElementById("snyatlen1");
    var che2 = document.getElementById("men1");
 setTimeout(function(){
    if(che.checked == true){
        che2.className="vib2"
    }
    else{
        che2.className="vib1"
    }
    clearTimeout(stop)
    info.innerHTML=""
    delete c
}, 5000)
</script>
 

 
</body>
 
</html>

Пока идет счетчик, ставь или снимай галку, все будет видно.


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