<HTML>
<HEAD>
<TITLE>Анкета читателя </TITLE>
<script>
<!-—
var s="Свойства выбранного флажка: \r\n"
function set(objch)
{s+="свойство value: "+objch.value +"\n"+
"свойство name: "+objch.name +"\n"+
"свойство type: "+objch.type +"\n"
document.forml.area.value=s}
//—>
</script>
</HEAD>
<BODY bgcolor="F8F8FF">
<CENTER>
<H3 align="center">Aнкета читателя</Н3>
<FORM name="form0">
<Н4>Введите название любимого журнала или газеты</Н4>
<input type="text" name="nl" size=45><br>
</FORM>
<FORM name="form1">
<Н4>Что Вас привлекает в издании?</Н4>
<TABLE border=3 align=center>
<TR>
<TD><img src="purpsm.gif" align="center"></TD>
<TD><input type="checkbox" name="ml"
value="Cтиль подачи материала"
onClick="set(forml.elements[0])">
Стиль подачи материала<br>
<input type="checkbox" name="m2"
value="Достоверность информации"
onClick="set(forml.elements[1])">
Достоверность информации<br>
<input type="checkbox" name="m3"
value="Дизайн и оформление"
ondick="set (form1.elements[2])">
Дизайн и оформление<br>
<input type="checkbox" name="m4"
value="Качество информации"
onClick="set(forml.elements[3])">
Качество информации<br>
<input type="checkbox" name="m5"
value="Репутация издания"
onClick="set(forml.elements[4])">
Репутация издания<br>
<input type="checkbox" name="m6"
value="Регулярность издания"
onClick="set(forml.elements[5])">
Регулярность издания<br>
</TD></TR></TABLE>
<textarea name="area" cols=35 rows=7></textarea><br>
<input type="reset" value="Отмена"
onclick="s='Свойства выбранного флажка: \r\n'">
</FORM>
</BODY>
</HTML>
В качестве параметра в функцию set можно передать номер флажка, а уже в самой функции определить свойства выбранного элемента. В этом случае функция set может быть описана следующим образом:
function set (i)
{ var d=document.forms[1].elements[i-1]
s+="свойство value: "+d.value +"\n"+
"свойство name: "+d.name +"\n"+
"свойство type: "+d.type +"\n"
document.forms[1].elements[6].value=s}
Обратите внимание, что в документе определены две формы. Одна содержит текстовое поле ввода названия журнала, а во второй форме расположены флажки, текстовое поле и кнопка сброса.
Разделы молодежного издания
Пусть читателю предлагается заполнить анкету, указав разделы, которые должны присутствовать в молодежном издании.
Названия разделов представлены в виде флажков. Пользователь устанавливает те флажки, разделы которых требуется включать в издание. Обработка анкет, как и ранее, состоит в том, что выбранные названия разделов помещаются в поле, расположенное в анкете справа, как изображено на рис. 5.3.
Объект checkbox кроме свойств value, name и type, которые соответствуют значениям параметра тега, описывающего флажок, обладает свойством form. Указанное свойство позволяет получить доступ к форме, на которой расположен флажок. Используя свойства формы, можно осуществить доступ к любому элементу формы. Доступ к восьмому элементу формы получается из функции set: objch. form, elements [7].value. От объекта checkbox С ПОМОЩЬЮ свойства form перешли к форме, на которой расположен флажок, форма имеет свойство elements, позволяющее получить доступ к любому элементу формы, а далее выбирается свойство элемента, которое нас интересует. Приведем HTML-код (листинг 5.2), соответствующий документу на рис. 5.3.