Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.01.2016, 10:20
Новичок на форуме
Отправить личное сообщение для wmfmynd Посмотреть профиль Найти все сообщения от wmfmynd
 
Регистрация: 31.01.2016
Сообщений: 9

Сократить код
Я совсем не разбираюсь в js. Надеюсь, вы мне поможете, заранее благодарен.
Задача состоит в том, чтобы сократить этот громадный код:
const dolarCost1 = $("tr#convertid-1 .dollar").html() * d;
const dolarCost2 = $("tr#convertid-2 .dollar").html() * d;
const dolarCost3 = $("tr#convertid-3 .dollar").html() * d;
const dolarCost4 = $("tr#convertid-4 .dollar").html() * d;
const dolarCost5 = $("tr#convertid-5 .dollar").html() * d;
const dolarCost6 = $("tr#convertid-6 .dollar").html() * d;
const dolarCost7 = $("tr#convertid-7 .dollar").html() * d;
$("tr#convertid-1 .br-result").append(dolarCost1.toFixed(-2));
$("tr#convertid-2 .br-result").append(dolarCost2.toFixed(-2));
$("tr#convertid-3 .br-result").append(dolarCost3.toFixed(-2));
$("tr#convertid-4 .br-result").append(dolarCost4.toFixed(-2));
$("tr#convertid-5 .br-result").append(dolarCost5.toFixed(-2));
$("tr#convertid-6 .br-result").append(dolarCost6.toFixed(-2));
$("tr#convertid-7 .br-result").append(dolarCost7.toFixed(-2));

Мне нужно было взять значение из дива с классом .dollar и уможить его на 20, а потом результат внести в див с классом .br-result
Ответить с цитированием
  #2 (permalink)  
Старый 31.01.2016, 10:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

wmfmynd,
html сделайте минимальный
Ответить с цитированием
  #3 (permalink)  
Старый 31.01.2016, 10:43
Новичок на форуме
Отправить личное сообщение для wmfmynd Посмотреть профиль Найти все сообщения от wmfmynd
 
Регистрация: 31.01.2016
Сообщений: 9

Сообщение от рони Посмотреть сообщение
wmfmynd,
html сделайте минимальный
Я немного не про это, дело в том, что в коде одни и те же операции повторяются много раз. Это можно превратить в функцию как-то?
Ответить с цитированием
  #4 (permalink)  
Старый 31.01.2016, 10:51
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

wmfmynd,
напишие html код вашей таблицы так понятней? пару строк хотябы
Ответить с цитированием
  #5 (permalink)  
Старый 31.01.2016, 11:39
Новичок на форуме
Отправить личное сообщение для wmfmynd Посмотреть профиль Найти все сообщения от wmfmynd
 
Регистрация: 31.01.2016
Сообщений: 9

Сообщение от рони Посмотреть сообщение
wmfmynd,
напишие html код вашей таблицы так понятней? пару строк хотябы
Да, конечно.
<table class="size">
				<tbody>
					<tr>
						<th>Размер</th>
						<th>Стоимость</th>
					</tr>
					<tr id="convertid-1" class="radio r-id-2">
						<td>80x43x8мм</td>
						<td><span class="br-result"></span> руб. ($<span class="dollar">2.6</span>)</td>
					</tr>
					<tr id="convertid-2" class="radio r-id-2">
						<td>120x65x12мм</td>
						<td><span class="br-result"></span> руб. ($<span class="dollar">5.89</span>)</td>
					</tr>
					<tr id="convertid-3" class="radio r-id-1">
						<td>180x97x18мм</td>
						<td><span class="br-result"></span> руб. ($<span class="dollar">13.35</span>)</td>
					</tr>
				</tbody>
			</table>
Ответить с цитированием
  #6 (permalink)  
Старый 31.01.2016, 11:42
Новичок на форуме
Отправить личное сообщение для wmfmynd Посмотреть профиль Найти все сообщения от wmfmynd
 
Регистрация: 31.01.2016
Сообщений: 9

И ещё один печальный момент в том, что строк (<tr id="convertid-) может быть как одна, так десять...
Ответить с цитированием
  #7 (permalink)  
Старый 31.01.2016, 12:13
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

wmfmynd,
<!DOCTYPE HTML>

<html>

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

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
  <script>
   $(function(){
      var d = 20.45;
      $(".radio").each(function(){
            var res = ($(".dollar",this).html()*d*100|0)/100;//  или через .toFixed(2)
            $(".br-result",this).html(res)
            });
   })
  </script>
</head>

<body>
<table class="size">
				<tbody>
					<tr>
						<th>Размер</th>
						<th>Стоимость</th>
					</tr>
					<tr id="convertid-1" class="radio r-id-2">
						<td>80x43x8мм</td>
						<td><span class="br-result"></span> руб. ($<span class="dollar">2.6</span>)</td>
					</tr>
					<tr id="convertid-2" class="radio r-id-2">
						<td>120x65x12мм</td>
						<td><span class="br-result"></span> руб. ($<span class="dollar">5.89</span>)</td>
					</tr>
					<tr id="convertid-3" class="radio r-id-1">
						<td>180x97x18мм</td>
						<td><span class="br-result"></span> руб. ($<span class="dollar">13.35</span>)</td>
					</tr>
				</tbody>
			</table>

</body>

</html>
Ответить с цитированием
  #8 (permalink)  
Старый 31.01.2016, 13:25
Новичок на форуме
Отправить личное сообщение для wmfmynd Посмотреть профиль Найти все сообщения от wmfmynd
 
Регистрация: 31.01.2016
Сообщений: 9

Спасибо, друг. Ты крут!
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать код CSS+HTML JamesMorgan Общие вопросы Javascript 2 11.08.2015 12:50
Код ответа сервера и обновление iframe alexdemi911 Общие вопросы Javascript 6 10.08.2015 22:30
Помогите к js коду, написать html код Modrih Элементы интерфейса 8 16.06.2015 18:08
Требуется выводить код рекламного блока Adsense из файла JavaScript??? speedflow Элементы интерфейса 0 26.05.2012 15:50
Получить код js-скрипта, находящегося в файле на сервере RomanA Общие вопросы Javascript 4 04.04.2012 09:53