Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.02.2017, 16:27
Кандидат Javascript-наук
Отправить личное сообщение для WebMachine Посмотреть профиль Найти все сообщения от WebMachine
 
Регистрация: 11.10.2016
Сообщений: 141

Нужен скрипт вычитания цены со скидкой для DLE
Всем привет.. В общем есть сайт: http://molodechnomebel-kavkaz.ru/cat1/

Он на CMS: DLE

Сам скрипт прописан в shortstory и выглядит это так:
<script type="text/javascript">
window.onload = function calc{news-id}() { <!-- window.onload нужна чтобы функция выполнялась без onload в body -->
var a = parseInt(document.getElementById('num1').innerHTML);
var b = parseInt(document.getElementById('num2').innerHTML);
var c = Math.round(a-(a*b/100));
document.getElementById('num3').innerHTML=c;
}
</script>

<h3>{title}</h3>
<font id="num1">[xfvalue_p1]</font> * <font id="num2">20%</font> = <font id="num3"></font>

Но в таком варианте он выводит только итоговую сумму первой новости..
Я применил тег PHP-шаблонизатора движка DLE {news-id} чтобы название функций скрипта были у каждой новости свои. И получил к каждой новости отличительный скрипт.. Но в таком виде высчитывается сумма со скидкой первой новости.. А нужно чтобы высчитывалась сумма со скидкой у всех новостей.

Далее я попробовал прописать тот же {news-id} в id. Выглядет это так:

<script type="text/javascript">
window.onload = function calc{news-id}() { <!-- window.onload нужна чтобы функция выполнялась без onload в body -->
var a = parseInt(document.getElementById('num{news-id}1').innerHTML);
var b = parseInt(document.getElementById('num{news-id}2').innerHTML);
var c = Math.round(a-(a*b/100));
document.getElementById('num{news-id}3').innerHTML=c;
}
</script>

<h3>{title}</h3>
<font id="num{news-id}1">[xfvalue_p1]</font> * <font id="num{news-id}2">20%</font> = <font id="num{news-id}3"></font>


Но итоговая сумма со скидкой так в обще не вычисляется нигде..

Если я все правильно понял, нужен способ без onload в body но с возможностью задать имя функции.. А затем приписать к этому имени например : function calc{news-id} // чтобы у каждого скрипта в краткой новости были разные имена. Чтобы функции срабатывали одновременно.

И так. В чем моя ошибка? И кто её решит?

Цель заключается в том чтобы вывести цену со скидкой в каждой новости.. Прописав сам скрипт в shortstory.tpl и без onload в body.

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

Но заранее прошу попытаться сделать это у себя.. дабы вероятность была 100%.

Напишите кто готов и сколько это будет стоить..

Последний раз редактировалось WebMachine, 19.02.2017 в 16:39.
Ответить с цитированием
  #2 (permalink)  
Старый 19.02.2017, 19:53
Кандидат Javascript-наук
Отправить личное сообщение для WebMachine Посмотреть профиль Найти все сообщения от WebMachine
 
Регистрация: 11.10.2016
Сообщений: 141

<html>
<head>
<title>Готово</title>
</head>
<body>
<script type="text/javascript">
window.addEventListener('DOMContentLoaded', function() {
var elems = document.querySelectorAll('.news-price');
for(var i = 0, fonts; i < elems.length; i++) {
fonts = elems[i].getElementsByTagName('font');
fonts[2].textContent = Math.floor(parseFloat(fonts[0].textContent) * (100 - parseFloat(fonts[1].textContent))/100);
}
});
</script>
<span class="news-price"><font>[xfvalue_p1]</font> * <font>20%</font> = <font></font></span>
</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 19.02.2017, 19:53
Кандидат Javascript-наук
Отправить личное сообщение для WebMachine Посмотреть профиль Найти все сообщения от WebMachine
 
Регистрация: 11.10.2016
Сообщений: 141

готово
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
нужна помощь (есть работа) Редирект скрипт для iOS 9+ Возможно на AngularJS dimazap Мобильный JavaScript 1 20.01.2017 18:46
Нужен скрипт для счета времени с текущего момента Julius123 Javascript под браузер 9 05.11.2014 20:35
Нужен скрипт для интернет магазина DDSSDD Работа 11 31.05.2013 19:20
Нужен скрипт для разбора массива Gvenihvivar Общие вопросы Javascript 4 28.05.2013 17:06
Как изменить скрипт, что бы им его можно было использовать для нужной страницы Nick50_70 Общие вопросы Javascript 0 28.04.2009 23:30