Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 02.10.2015, 11:35
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

А разве это окно?

var one = document.getElementById("recent").value;

var one = document.getElementById("recent");
one.value = (one.value * a).toFixed(2);


document.getElementById("output").innerHTML=res; - такое кстати не годится, у этого поля есть свойство value, которое и нужно изменять.

Последний раз редактировалось laimas, 02.10.2015 в 11:38.
Ответить с цитированием
  #12 (permalink)  
Старый 02.10.2015, 12:37
Аспирант
Отправить личное сообщение для Lecseus Посмотреть профиль Найти все сообщения от Lecseus
 
Регистрация: 13.08.2015
Сообщений: 45

спасибо большое. а чтобы первый ввод запоминался, что нужно прописать? Ато оно умножается постоянно, а нужно, чтобы ввод recent оставался, но при нажатии на кнопки умножался на аргумент кнопки?

про textarea понял, спасибо.
Ответить с цитированием
  #13 (permalink)  
Старый 02.10.2015, 12:40
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Lecseus
а чтобы первый ввод запоминался, что нужно прописать? Ато оно умножается постоянно, а нужно, чтобы ввод recent оставался, но при нажатии на кнопки умножался на аргумент кнопки?
Не осилил вопроса. Зачем же тогда изменять значение этого поля?
Ответить с цитированием
  #14 (permalink)  
Старый 02.10.2015, 12:43
Аспирант
Отправить личное сообщение для Lecseus Посмотреть профиль Найти все сообщения от Lecseus
 
Регистрация: 13.08.2015
Сообщений: 45

ну да. например, если я ввел первое значение евро 5. то первая кнопка переводит это значение в фунты. теперь если я захочу нажать на кнопку другую, чтобы все то же значение 5, которое я ввел в самом начале, умножалось уже по тому, какое значение в другой кнопке.. это вообще возможно?
Ответить с цитированием
  #15 (permalink)  
Старый 02.10.2015, 13:04
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Наверное нужно исходить из того, для чего это? Ввод в поле формы, так что должен получить сервер - 5 или 5 умноженное на N? Если первое, то результат умножения не стоит помещать в поле ввода, а выводить рядом как информацию. А запомнить ввод конечно можно, сохраняя его в переменной при каждом отпускании клавиши (цифровой).
Ответить с цитированием
  #16 (permalink)  
Старый 02.10.2015, 13:11
Аспирант
Отправить личное сообщение для Lecseus Посмотреть профиль Найти все сообщения от Lecseus
 
Регистрация: 13.08.2015
Сообщений: 45

function rezultat(a) {
	var one = document.getElementById("recent");
	var two = document.getElementById("recent2");
	two.value = (one.value * a).toFixed(2);
	}

спасибо, реализовал таким образом.
вы не подскажете, а как сохранить в переменной значение при каждом отпускании клавиши?
Ответить с цитированием
  #17 (permalink)  
Старый 02.10.2015, 13:28
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Ну во-первых нужно запретить ввод в поле не цифровых символов, и обрабатывать событие отпускание клавиши. Если нативный обработчик то так:

объявить переменную var n = 0;
добавить обработчик полю ввода - onkeyup="if(this.value = this.value.replace(/^0|\D/,''))n=this.value"
в функции проверять - if(n) { //выполнение функции, умножение

Вот только как знать, что ранее запомненное это первый ввод числа, а сейчас жмем клавиши, это уже ввод нового числа?
Ответить с цитированием
  #18 (permalink)  
Старый 02.10.2015, 13:54
Аспирант
Отправить личное сообщение для Lecseus Посмотреть профиль Найти все сообщения от Lecseus
 
Регистрация: 13.08.2015
Сообщений: 45

спасибо большое. буду заниматься оформлением, основное вы помогли.
попробовал добавить обработчик, все хорошо, но вот в if наверное допускаю ошибку.
Ответить с цитированием
  #19 (permalink)  
Старый 02.10.2015, 14:26
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

if(this.value = this.value.replace(/^0|\D/,''))n=this.value по русски:

если(значение поля ввода равное значению поля вода из которого удалены не цифры, а также 0, если он первый в числе, не пустое), то переменной n (которая должна быть объявлена в скрипте) присвоить текущее значение поля ввода

И ошибок в условии нет, так что не знаю чего там у вас с if.

Последний раз редактировалось laimas, 02.10.2015 в 14:31.
Ответить с цитированием
  #20 (permalink)  
Старый 02.10.2015, 14:56
Аспирант
Отправить личное сообщение для Lecseus Посмотреть профиль Найти все сообщения от Lecseus
 
Регистрация: 13.08.2015
Сообщений: 45

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);
	}
};

я имею ввиду здесь ошибка
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Плагин для Chrome. Анти - мат. Проблема с обновлением. Pacman Javascript под браузер 3 31.05.2013 21:40
Плагин для Chrome. Анти - мат. Проблема с обновлением. timedo Общие вопросы Javascript 1 30.05.2013 12:28
убрать прокрутку с элемента Vampir3 Общие вопросы Javascript 1 06.02.2013 17:20
Горизонтальная прокрутка контента! andys Элементы интерфейса 5 26.06.2011 23:06
скролл для длинного текста не появляется... dschmitz (X)HTML/CSS 6 27.11.2010 02:34