Помогите исправить ошибки с DOM елементами
<script language="JavaScript" type="text/javascript">
function kv(){ var a = document.form1.text1.value; var b = a*a; document.form1.text2.value=b; } </script> <form name="form1"> <input type="text" name="text1"> <input tyte="text" name="text2"> <input type="button" name="subm" onClick="kv();"> </form> так скрипт работает, но когда ставлю его в div то не могу понять как прописать путь ДОМ элементов. Например: <div id="main"> <form name="form1"> <input type="text" name="text1"> <input tyte="text" name="text2"> <input type="button" name="subm" onClick="kv();"> </form> </div> писал и так: document.getElementById(main).form1.text1.value; и так: document.div[o].form1.text1.value; и так: document.main.form1.text1.value; и еще много как... Ничего не получилось. Помогите сделать все как надо. Я только начал учится. |
Вот твоя функция в рабочем виде (изменил переменные для быстрого тестирования в своем черновике):
function kv() { var kv_a = document.getElementsByName('text1')[0].value ; /*var kv_a = document.getElementsByName('form1')[0].children[0].value // не нужный Susanin-style (: */ var kv_b = kv_a*kv_a; document.form1.text2.value = kv_b; } Хоть я и сам учусь, но мне кажется не стоит использовать поиск/фильтрацию элементов таким способом. (это, наверное, из разряда "слишком просто", значит где-то подстава) Для этого есть системные функции вроде: "getElementsByName" (и другие - для классов, id, по тегам) и что-то мне подсказывает, что это может считаться плохой практикой в JS. (и у тебя ошибка во втором input в "type") |
Всем спасибо. Все получилось)
|
Часовой пояс GMT +3, время: 23:20. |