Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Помогите разобратся! (https://javascript.ru/forum/css-html/21948-pomogite-razobratsya.html)

kyivprogs 30.09.2011 13:18

Помогите разобратся!
 
Здравствуйте!
Купил книгу для изучения Javascript. Книга называется Javascript. Библия пользователя. Дошел до раздела переоброзоапния строк в числа и столкнулся с проблемой. Нужно написать код с 3 елементов формы текствого поля и одной кнопки. В первое поля вводится число и во второе. После события onclick вызывается функция которая додает эти числа. Для переоброзования строки в число используют функции parseInt и parseFloat. Я написал скрипт, но где в нем ошибка не могу понять вроди бы все правильно....
вот сам скрипт:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Документ без названия</title>
</head>
<body>
<script type="text/javascript">
var  a,b,c, rezultat;
a=document.forms["dodavanya"].chis1.value;
b=document.forms["dodavanya"].chis2.value;
c=document.forms["dodavanya"].chis3.value;
function obrahunok(){
	rezultat=pareseInt(a)+pareseInt(b);
	c=rezultat;
	}
</script>
<form  id="dodavanya" name="dodavanya">
<label> vvedit chislo 1<input type="text" name="chis1" id="chis1"></label>
<label> vvedit chislo 2<input type="text" name="chis2" id="chis2"></label>
<input type="button" name="obrah" value="Обрахувати" onClick="obrahunok()">
<label> suma<input type="text" name="chis3" id="chis3"></label>
</form>
</body>
</html>

ksa 30.09.2011 14:24

Цитата:

Сообщение от kyivprogs
но где в нем ошибка не могу понять вроди бы все правильно

Отдельно взятые строчки может и нормальные... :) Только вот расставлены они не так.

Всё делать нужно внутри функции.

ksa 30.09.2011 14:28

Как вариант...

<!DOCTYPE html>
<html>
<head>
<!--
<script src="http://code.jquery.com/jquery-latest.js"></script>
-->
<style type="text/css">
</style>
<script type="text/javascript">
function obrahunok(){
	var  a,b,rezultat;
	a=document.getElementById('chis1').value;
	b=document.getElementById('chis2').value;
	rezultat=parseInt(a)+parseInt(b);
	document.getElementById('chis3').value=rezultat;
	}
</script>
</head>
<body>
<form  id="dodavanya" name="dodavanya">
	<label> vvedit chislo 1<input type="text" name="chis1" id="chis1"></label>
	<label> vvedit chislo 2<input type="text" name="chis2" id="chis2"></label>
	<input type="button" name="obrah" value="Обрахувати" onClick="obrahunok()">
	<label> suma<input type="text" name="chis3" id="chis3"></label>
</form>
</body>
</html>

kyivprogs 30.09.2011 15:27

а почему нельзя придумать переменную c=document.getElementById('chis3').value; а потом с=rezultat; браузер выдает ошибку.
ksa,
Я вижу у Вас статус проффесора, вы наверное много знаете о джава скрипт!? Я очень сильно хочу разобратся в тонкостях джава скрипта... Вы не подскажите правильную я выбрал книгу для начального изучения? Книга джава скрипт.Библия пользователя. Или мне лучше начать с другой книги.... Дело в том что книг очень много, а вот какую ис них выбрать что бы могла наставить на путь истинный????
Да и огромное спасибо за ответ, а то я голову ломал никак не мог понять в чем беда.... Дело в том что я обявлял переменные как глобальные, а не локальные, т.е так как приведено в книги. Для того что б их можна было вызывать не только в функции.

ksa 01.10.2011 10:27

Цитата:

Сообщение от kyivprogs
а почему нельзя придумать переменную c=document.getElementById('chis3').value; а потом с=rezultat;

Если и использовать такие конструкции, то правильно
c=document.getElementById('chis3'); 
с.value=rezultat;


Цитата:

Сообщение от kyivprogs
Вы не подскажите правильную я выбрал книгу для начального изучения? Книга джава скрипт.Библия пользователя. Или мне лучше начать с другой книги....

Для начинающих я бы посоветовал следующие книги:
- Java Script для чайников
http://webcorp.ru/page/b_jasdch.html
- Java Script за 24 часа
http://progbook.ru/2008/07/27/osvojj...ipt-za-24.html

Наверняка их все можно найти в сети и скачать.

Цитата:

Сообщение от kyivprogs
Дело в том что я обявлял переменные как глобальные, а не локальные, т.е так как приведено в книги.

Дело вообще не в этом... :) Почитай те книжки - многое прояснится. ;)

kyivprogs 01.10.2011 15:56

Всем спасибо огромное разобрался!!!:)


Часовой пояс GMT +3, время: 16:24.