Вход

Просмотр полной версии : Снова чекбоксы


Vampir3
15.12.2011, 22:54
<html>
<body>
<input type="checkbox" id="checkbox">
<br>
<input type="button" id="button" value="Check">
<script>
function alertTrue(){
alert('Checked');
}
function alertFalse(){
alert('Unchecked');
}
var cb = document.getElementById('checkbox');
var bt = document.getElementById('button');
if(cb.checked==true){bt.setAttribute('onClick', "alertTrue()");}
else{
if(cb.checked==false){bt.setAttribute('onClick', "alertTrue()");}
}
</script>
</body>
</html>


Собственно вот код, что я не так написал?

devote
15.12.2011, 23:36
не понятно что вы вообще пытаетесь изобразить, для чего это и что должно происходить

Vampir3
16.12.2011, 00:21
Ну, при клике на кнопку alert() должен показывать состояние чекбокса.

Vampir3
16.12.2011, 00:24
<html>
<body>
<input type="checkbox" id="checkbox">
<br>
<input type="button" id="button" value="Check">
<script>
function alertTrue(){
alert('checked');
}
function alertFalse(){
alert('unchecked');
}
var cb = document.getElementById('checkbox');
var bt = document.getElementById('button');
if(cb.checked==true){bt.setAttribute('onClick', "alertTrue()");}
else{
if(cb.checked==false){bt.setAttribute('onClick', "alertFalse()");}
}
</script>
</body>
</html>


нашел ошибку у себя.. но всё равное не работает

devote
16.12.2011, 00:58
<html>
<body>
<input type="checkbox" id="checkbox">
<br>
<input type="button" id="button" value="Check">
<script type="text/javascript">
function alertTrue(){
alert('checked');
}
function alertFalse(){
alert('unchecked');
}

var cb = document.getElementById('checkbox'),
bt = document.getElementById('button');

bt.onclick = function() {
if ( cb.checked ) {
alertTrue();
} else {
alertFalse();
}
}
</script>
</body>
</html>

рони
16.12.2011, 01:11
Vampir3,
elem.setAttribute('onclick', 'alert(something)') // в IE не работает
DOM-атрибуты VS DOM-свойства (http://javascript.ru/tutorial/dom/attributes#dom-atributy-vs-dom-svoystva)
Назначение обработчиков (http://javascript.ru/tutorial/events)

ksa
16.12.2011, 09:26
Vampir3, что-то ты перемудрил... Как вариант

<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
<link rel="stylesheet" type="text/css" href="tmp.css" />
-->
<style type="text/css">
</style>
<script type="text/javascript">
function Go() {
var mess=(document.getElementById('checkbox').checked) ? 'checked': 'unchecked';
alert(mess);
}
</script>
</head>
<body>
<input type="checkbox" id="checkbox" />
<br />
<input type="button" id="button" value="Check" onclick='Go()' />
</body>
</html>

devote
16.12.2011, 10:07
Vampir3, что-то ты перемудрил... Как вариант
Я так понимаю ему нужно соответствующую функцию запустить в зависимости от значения. Но это лишь мое предположение.

ksa
16.12.2011, 10:46
Послушаем чего автор скажет... :)

Livanderiaamarum
16.12.2011, 16:53
<html>
<body>
<input type="checkbox" id="checkbox">
<br>
<input type="button" id="button" value="Check">
<script type="text/javascript">
function alertTrue(){
alert('checked');
}
function alertFalse(){
alert('unchecked');
}

var cb = document.getElementById('checkbox'),
bt = document.getElementById('button');

bt.onclick = function() {
if ( cb.checked ) {
alertTrue();
} else {
alertFalse();
}
}
</script>
</body>
</html>

четко., умеешь могешь)

Vampir3
16.12.2011, 19:09
всем спасибо)
понял, осознал, больше не буду)