А разве это окно?
var one = document.getElementById("recent"); one.value = (one.value * a).toFixed(2); document.getElementById("output").innerHTML=res; - такое кстати не годится, у этого поля есть свойство value, которое и нужно изменять. |
спасибо большое. а чтобы первый ввод запоминался, что нужно прописать? Ато оно умножается постоянно, а нужно, чтобы ввод recent оставался, но при нажатии на кнопки умножался на аргумент кнопки?
про textarea понял, спасибо. |
Цитата:
|
ну да. например, если я ввел первое значение евро 5. то первая кнопка переводит это значение в фунты. теперь если я захочу нажать на кнопку другую, чтобы все то же значение 5, которое я ввел в самом начале, умножалось уже по тому, какое значение в другой кнопке.. это вообще возможно?
|
Наверное нужно исходить из того, для чего это? Ввод в поле формы, так что должен получить сервер - 5 или 5 умноженное на N? Если первое, то результат умножения не стоит помещать в поле ввода, а выводить рядом как информацию. А запомнить ввод конечно можно, сохраняя его в переменной при каждом отпускании клавиши (цифровой).
|
function rezultat(a) { var one = document.getElementById("recent"); var two = document.getElementById("recent2"); two.value = (one.value * a).toFixed(2); } спасибо, реализовал таким образом. вы не подскажете, а как сохранить в переменной значение при каждом отпускании клавиши? |
Ну во-первых нужно запретить ввод в поле не цифровых символов, и обрабатывать событие отпускание клавиши. Если нативный обработчик то так:
объявить переменную var n = 0; добавить обработчик полю ввода - onkeyup="if(this.value = this.value.replace(/^0|\D/,''))n=this.value" в функции проверять - if(n) { //выполнение функции, умножение Вот только как знать, что ранее запомненное это первый ввод числа, а сейчас жмем клавиши, это уже ввод нового числа? |
спасибо большое. буду заниматься оформлением, основное вы помогли.
попробовал добавить обработчик, все хорошо, но вот в if наверное допускаю ошибку. |
if(this.value = this.value.replace(/^0|\D/,''))n=this.value по русски:
если(значение поля ввода равное значению поля вода из которого удалены не цифры, а также 0, если он первый в числе, не пустое), то переменной n (которая должна быть объявлена в скрипте) присвоить текущее значение поля ввода И ошибок в условии нет, так что не знаю чего там у вас с if. |
function rezultat(a) { var n = 0; if(n){ var one = document.getElementById("recent"); var two = document.getElementById("recent2"); two.value = (one.value * a).toFixed(2); } }; я имею ввиду здесь ошибка |
Часовой пояс GMT +3, время: 04:56. |