|
|
|
| Есть необходимость такая - сам я в JS можно сказать ничего не понимаю, но задачу надо как-то решить. Кто умеет - помогите разобраться с этим, пожалуйста.
Собственно - есть поле input text, в нем есть значение. есть второе поле, где вводят цифры, есть кнопка...посчитать, к примеру и есть третье поле, где должен появляться результат умножения первых двух значений.
Заранее благодарен за ответ :) | |
|
|
|
|
|
|
|
для: Richard Ferlow
(27.12.2006 в 22:56)
| |
<script>
function sum(){
d=document;
df = d.forms['form'];
df.z.value = parseInt(df.x.value)+parseInt(df.y.value);
}
</script>
<form name="form">
<input type="text" name="x">
<input type="text" name="y">
<input type="text" name="z">
<input type="button" value="+" onClick="sum()">
</form>
|
| |
|
|
|
|
|
|
|
для: Lelik
(28.12.2006 в 01:10)
| | Большое спасибо :) | |
|
|
|
|
|
|
|
для: Richard Ferlow
(28.12.2006 в 01:27)
| | В дополнение к этому - он числа с запятой округляет - как это можно решить ? | |
|
|
|
|
|
|
|
для: Richard Ferlow
(29.12.2006 в 09:17)
| |
<script>
function sum(){
d=document;
df = d.forms['form'];
df.z.value = parseFloat(df.x.value)+parseFloat(df.y.value);
}
</script>
<form name="form">
<input type="text" name="x">
<input type="text" name="y">
<input type="text" name="z">
<input type="button" value="+" onClick="sum()">
</form>
|
| |
|
|
|
|
|
|
|
для: Richard Ferlow
(27.12.2006 в 22:56)
| | можно и так:
<script>
function sum(){
d=document;
df = d.forms['form'];
df.z.value = df.x.value+df.y.value;
}
</script>
<form name="form">
<input type="text" name="x">
<input type="text" name="y">
<input type="text" name="z">
<input type="button" value="+" onClick="sum()">
</form>
|
но будет криво, если вместо цифер, в поля будет введен текст | |
|
|
|
|
|
|
|
для: Lelik
(29.12.2006 в 16:01)
| | Как ни странно, но до этого - Float - допер сам :)
Однако что смутило, у меня в функции умножение стоит - + на * заменил.
Умножает.
Но, например, 32.64 * 7000 приводит к результату с кучей девяток после точки(запятой).
Почему - не ясно. | |
|
|
|
|
|
|
|
для: Richard Ferlow
(29.12.2006 в 20:42)
| | потому, что мы получаем округленные числа, 1 не равно 1, 1 - это число = 0,9999999999999999(и еще очень много деваток дальше. Почему так хз, не я придумывал, с этим вопросом к математикам ;) ) | |
|
|
|
|
|
|
|
для: Lelik
(30.12.2006 в 02:46)
| | Блин, и это никак не исправить ?
Странно, вроде точная математика. | |
|
|
|
|
|
|
|
для: Richard Ferlow
(22.01.2007 в 17:03)
| | можно предварительно обрабатывать цифры функцией Math.round(цифра), которая округляет до ближайшего числа, то есть
Math.round(4,4) = 4;
a
Math.round(4,6) = 5; | |
|
|
|
|
|
|
|
для: Lelik
(22.01.2007 в 17:06)
| | Хм...но там ведь не всегда целые числа получаются.
Я для того и использовал float.
Блин, странно.
Раньше не любил этот яваскрипт, а теперь не люблю еще больше :) | |
|
|
|
|
|
|
|
для: Richard Ferlow
(23.01.2007 в 10:35)
| | это не только яваскрипт, такая фигня и С++ встречается | |
|
|
|