2015-12-14 2 views
1

Это должно быть довольно просто. У вас есть следующий текст:Отобразите другой текст, если CheckBox отмечен (не)

Ваш крик: Упс!

И когда вы проверяете флажок ниже, говорит

Крик "яй" вместо этого! «! Возгласы»

слово должно измениться на «Ура!»:

Ваш крик: Ура!

Так мое тело (я хочу сделать это с помощью функции):

Your scream: <script>GiveMeSomeScream()</script>!<hr> 
<input type="checkbox" name="whatever" id="ScreamYay"> Scream "yay" instead! 

Но у меня возникают проблемы, связанные с фактическим сценарием. Вот что я пробовал в первую очередь:

function GiveMeSomeScream() 
{ if (document.GetElementById('ScreamYay').checked == "true") 
{ document.write("Yay"); 
} else 
{ document.write("Whoops"); 
}} 

Но это просто не сработало. Таким образом, я расширил это следующим образом:

var yay = document.getElementById('ScreamYay').checked 
function GiveMeSomeScream() 
{ if (yay == "true") 
{ document.write("Yay"); 
} else 
{ document.write("Whoops"); 
}} 

Теперь это дает «упс» каждый раз (даже если я делаю галочку defaultly), и это довольно много его.

Я знаю, что это смешно, я даже не могу обработать флажок, но все же я был бы рад за любую помощь.

+0

Булевы константы в JavaScript являются «истинными» и «ложными», без кавычек. В любом случае вам вообще не нужно явно сравнивать с константами. – Pointy

+0

Кроме того, ваше использование 'document.write()' здесь приведет к фундаментальному сбою: вызов уничтожит всю страницу, оставив только «Yay» или «Whoops». – Pointy

ответ

1

if (yay == "true") Изменение к if (yay)

+0

Не помогло, к сожалению. – quoque

0

Значение, возвращаемое document.getElementById('elementID').checked будет логическое значение. Это дополнительно поясняется here. Чтобы использовать это, вы можете просто протестировать значение, используя if(yay === true) или if(yay), как предлагает @Alex. Что касается использования document.write, вам нужно включить теги html (разметку), как this.

0

Вы можете сделать это следующим образом:
Вы должны добавить функцию обмена на метку флажка.
также document.getElementById неправильно
document.getElementById правильно
наконец
document.getElementById ("ScreamYay"). Проверяется == "истина" неправильно
document.getElementById ("ScreamYay"). Проверено = = true is right

function GiveMeSomeScream() 
{ if (document.getElementById('ScreamYay').checked == true) 
{ document.write("Yay"); 
} else 
{ document.write("Whoops"); 
}} 
Смежные вопросы