Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.03.2016, 09:44
Аватар для Stay_Strong
Аспирант
Отправить личное сообщение для Stay_Strong Посмотреть профиль Найти все сообщения от Stay_Strong
 
Регистрация: 14.10.2015
Сообщений: 37

Заменить запятую на точку в калькуляторе
Доброго времени суток всем! Скажите, как можно заменить запятую на точку в калькуляторе. Пробовал так:
var room_length = document.getElementById('room_length').value.replace(/\./g,','),
room_width = document.getElementById('room_width').value.replace(/\./g,',')

Затем пробовал так:
var room_length = document.getElementById('room_length').value;
room_length.replace(/\./g,',')

Но ничего не выходит. Подскажите, пожалуйста.
Ответить с цитированием
  #2 (permalink)  
Старый 07.03.2016, 10:19
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 27,842

Stay_Strong,
результат добавьте обратно в свойство
Ответить с цитированием
  #3 (permalink)  
Старый 07.03.2016, 10:33
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 27,842

Stay_Strong,
var room_length = document.getElementById('room_length'),
room_width = room_length.value.replace(/\./g,',');
room_length.value = room_width;

Последний раз редактировалось рони, 07.03.2016 в 10:35.
Ответить с цитированием
  #4 (permalink)  
Старый 07.03.2016, 12:06
Аватар для Stay_Strong
Аспирант
Отправить личное сообщение для Stay_Strong Посмотреть профиль Найти все сообщения от Stay_Strong
 
Регистрация: 14.10.2015
Сообщений: 37

Сообщение от рони Посмотреть сообщение
Stay_Strong,
var room_length = document.getElementById('room_length'),
room_width = room_length.value.replace(/\./g,',');
room_length.value = room_width;
Спасибо, что нашли время откликнуться на мой вопрос. Но этот метод не работает. Он просто перестает считать. Может быть я как-то не понятно изъясняюсь? Там две разные переменные (высоты и ширины). Приведу пример для одной из них.

Ввожу переменную высоты
var room_length_nan = document.getElementById('room_length').value, // берем значение введенное в инпут
room_length = room_length_nan.value.replace(/\./g,','); // создаем переменную от значения, где запятую меняем на точку
room_length_nan.value = room_length; // присваиваем значению введенной переменной новое значение

Результат, калькулятор ломается.

Пошел дальше:
Вывожу в поле значение новое
document.getElementById('room_length').textContent = room_length; //вывожу в инпут новое значение

Ничего не происходит калькулятор не работает.

Последний раз редактировалось Stay_Strong, 07.03.2016 в 12:08.
Ответить с цитированием
  #5 (permalink)  
Старый 07.03.2016, 12:22
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 27,842

Stay_Strong,
нет кода == нет совета
Сообщение от Stay_Strong
(/\./g,','); // создаем переменную от значения, где запятую меняем на точку
как раз наоборот у вас.
делайте макет полностью, но минимально
Ответить с цитированием
  #6 (permalink)  
Старый 07.03.2016, 13:17
Аватар для Stay_Strong
Аспирант
Отправить личное сообщение для Stay_Strong Посмотреть профиль Найти все сообщения от Stay_Strong
 
Регистрация: 14.10.2015
Сообщений: 37

рони,
вот полный минималистичный код, который не работает на данный момент:
function calculate() {
var room_length_nan = document.getElementById('room_length').value,
    room_length = room_length_nan.value.replace(/\,/g,'.');

room_length_nan.value = room_length;
document.getElementById('room_length').textContent = room_length;

var room_width_nan = document.getElementById('room_width').value,
    room_width = room_width_nan.value.replace(/\,/g,'.');

room_width_nan.value = room_length;
document.getElementById('room_width').textContent = room_length;

var area = room_length * room_width,
     price_ceiling_m = 299,
     price_new = area * price_ceiling_m;

document.getElementById('price_new').textContent = price_new + " руб."; 
}


Не считает. В консоле пишет:
Uncaught TypeError: Cannot read property 'replace' of undefined

И не подменяет в инпуте ничего

Последний раз редактировалось Stay_Strong, 07.03.2016 в 13:21.
Ответить с цитированием
  #7 (permalink)  
Старый 07.03.2016, 13:50
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 27,842

Stay_Strong,
html ?
Ответить с цитированием
  #8 (permalink)  
Старый 07.03.2016, 13:58
Аватар для Stay_Strong
Аспирант
Отправить личное сообщение для Stay_Strong Посмотреть профиль Найти все сообщения от Stay_Strong
 
Регистрация: 14.10.2015
Сообщений: 37

рони,
Возможно так будет проще: http://sdelai-potolok.ru/
Прям сразу весь калькулятор. Я просто весь код целиком не писал. Потому что там много полей.
Ответить с цитированием
  #9 (permalink)  
Старый 07.03.2016, 14:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 27,842

Stay_Strong,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">

  </style>

  <script>
   function calculate() {
var room_length_nan = document.getElementById('room_length'),
    room_length = room_length_nan.value.replace(/\,/g,'.');

room_length_nan.value = room_length;


var room_width_nan = document.getElementById('room_width'),
    room_width = room_width_nan.value.replace(/\,/g,'.');

room_width_nan.value = room_width;


var area = room_length * room_width,
     price_ceiling_m = 299,
     price_new = area * price_ceiling_m;

document.getElementById('price_new').value = price_new.toFixed(2) + " руб.";
}

  </script>
</head>

<body>
 <form action="http://">
 <input id="room_length" name="">
 <input id="room_width" name="">
 <input id="price_new" name="" readonly="readonly">
 <input name="" type="button" value="calculate"  onclick="calculate()">
 </form>
</body>

</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как заменить цепочку кода в DOM другой строкой? SashaFlowSet Events/DOM/Window 2 11.03.2015 10:47
Значение переменной через запятую DDSSDD Серверные языки и технологии 41 16.10.2014 15:01
Заменить запятую на точку snake Javascript под браузер 2 27.12.2013 09:54
Как заменить символ Forgotten Общие вопросы Javascript 4 31.08.2012 00:39
Заменить элемент load vanderv jQuery 2 09.11.2010 10:48