JQuery некого рода калькулятор

Статус
В этой теме нельзя размещать новые ответы.

MSW

Мой дом здесь!
Регистрация
27 Авг 2007
Сообщения
491
Реакции
414
Суть приблемы в следующем:
есть 3 поля, первое - это результат, два для ввода значений

нужно сделать так чтоб при вводе значения в любую из этих двух форм, иои в обе вместе, происходил подсчёт например значение первой формы делилось на 2/3, значение второй формы делилось на 1/3 и эти два результата слаживалсь и уже полный результат выводился в первую форму.

знания яваскрипт очень ограничены...
анализируя различного рода скрипты и примеры смог реализовать это так:

HTML:
<script lang="JavaScript">
function calculator(form) {
silicon = eval(form.silicon.value);
hydrogen = eval(form.hydrogen.value);

metal = (silicon / (2/3)) + (hydrogen / (1/3));
form.metal.value = metal;
}
</script>
<form method="post" action="{@sendAction}">
<input type="text" name="metal" size="8" readonly>

<input type="text" name="silicon" onchange="this.value=this.value.replace(/([^0-9])/g,''); calculator(this.form);" onkeyup="var n=this.value.replace(/([^0-9])/g,''); if(n!=this.value) this.value=n; calculator(this.form);">

<input type="text" name="hydrogen" onchange="this.value=this.value.replace(/([^0-9])/g,''); calculator(this.form);" onkeyup="var n=this.value.replace(/([^0-9])/g,''); if(n!=this.value) this.value=n; calculator(this.form);">
</form>

проблемка в том что если одно из полей в таком виде пустое то результат принимает значение NaN

помогите, пожалуйста, разобраться с этим...

былоб замечательно еслиб это всё на жквери реализовать...
 
Просто нужно привести правильно значение полей к числу: если невозможно получить из строки число, то присвоить «0». И тогда дальше арифметика пойдет нормально без всяких NotANumber.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху