Я использую javascript, чтобы изменить внешний вид этой формы, чтобы при нажатии каждой радиокнопки поле ввода «Тело» меняло размер. Проблема в том, что он работает только тогда, когда ни одна из переключателей не нажата, или когда я вставил «флажок» в один из входов, в этом случае он работает только для проверенного типа входа. Вот код:
<form action='add_note' method="POST">
Title <input type="text" name="title" /><br />
Body
<div id="note_input">
<textarea id="note_input1" name="body" cols="27" rows="5"></textarea>
</div>
Type
<input type="radio" name="typey" value="text" onclick="text_input_type('text')" checked/>
Text
<input type="radio" name="typey" value="list" onclick="text_input_type('list')"/>
List
<input type="radio" name="typey" value="checklist" onclick="text_input_type('checklist')" />
Checklist
<input type="submit" name="addnote" value="Add Note" />
</form>
<script type="text/javascript">
function text_input_type(type) {
if (type=='list') {
document.getElementById("note_input").innerHTML=
"<input type=\"text\" id=\"note_input1\" name=\"body\">";
}
if(type == 'checklist') {
document.getElementById("note_input").innerHTML=
"<input type=\"text\" id=\"note_input1\" name=\"body\">";
}
if (type == 'text') {
document.getElementById("note_input").innerHTML=
"<textarea id=\"note_input1\" name=\"body\" cols=\"27\" rows=\"5\">
</textarea>";
}
}
</script>