[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Просчет стоимости товара.
sergeykatan
Здравствуйте!
Нужен скрипт для просчета товара на сайте.

Сайт на движке DLE.
Скрипт должен просчитывать стоимость в браузере.
К каждому товару я указываю вес, этот вес подставляется в шаблоне товара тегом [xfvalue_ves].

Скрипт должен взять этот вес и подставить в нужную формулу, и соответственно вывести результат в нужном месте.

Я не разбираюсь в php и javascript, но своими силами слепил скрипт который считает стоимость в полной новости.. но проблема в каталоге! Скрипт считает первый товар, а дальше нет.. Как мой код заставить считать все товары на странице, где есть тег [xfvalue_ves] ??

Чувствую что какой то мелочи не хватает (могу и ошибаться).. но уже 2недели вникаю и ничего не выходит =((


Извините за громоздкий код, уверен его можно сделать гораздо меньше..
Если поможете, буду признателен!

Вот код:

<script type="text/javascript">
function
onclickCheckbox() {

var nameCheckbox = document.getElementsByName('nameCheckbox')[0];
var rezultatCheckbox = ''
document.getElementById("nameCheckbox").focus();
if (nameCheckbox.checked)
rezultatCheckbox = (parseFloat(nameCheckbox.value) * 1).toFixed(2);
document.getElementById('rezultatCheckbox').innerHTML = rezultatCheckbox;


var nameCheckbox1 = document.getElementsByName('nameCheckbox1')[0];
var nacenka = document.getElementsByName('nacenka')[0];
var skidka = document.getElementsByName('skidka')[0];
var rezultatCheckbox1 = ''
document.getElementById("nameCheckbox1").focus();
document.getElementById("nacenka").focus();
document.getElementById("skidka").focus();
if (rezultatCheckbox < 2.01 && rezultatCheckbox > 0)
rezultatCheckbox1 = (460 * parseFloat(nameCheckbox1.value) + parseFloat(nacenka.value) - parseFloat(skidka.value)).toFixed(0);
document.getElementById('rezultatCheckbox1').innerHTML = rezultatCheckbox1;


var nameCheckbox2 = document.getElementsByName('nameCheckbox2')[0];
var nacenka = document.getElementsByName('nacenka')[0];
var skidka = document.getElementsByName('skidka')[0];
var rezultatCheckbox2 = ''
document.getElementById("nameCheckbox2").focus();
document.getElementById("nacenka").focus();
document.getElementById("skidka").focus();
if (rezultatCheckbox < 4.01 && rezultatCheckbox > 2.01)
rezultatCheckbox2 = (450 * parseFloat(nameCheckbox2.value) + parseFloat(nacenka.value) - parseFloat(skidka.value)).toFixed(0);
document.getElementById('rezultatCheckbox2').innerHTML = rezultatCheckbox2;

var nameCheckbox3 = document.getElementsByName('nameCheckbox3')[0];
var nacenka = document.getElementsByName('nacenka')[0];
var skidka = document.getElementsByName('skidka')[0];
var rezultatCheckbox3 = ''
document.getElementById("nameCheckbox3").focus();
document.getElementById("nacenka").focus();
document.getElementById("skidka").focus();
if (rezultatCheckbox < 7.01 && rezultatCheckbox > 4.01)
rezultatCheckbox3 = (430 * parseFloat(nameCheckbox3.value) + parseFloat(nacenka.value) - parseFloat(skidka.value)).toFixed(0);
document.getElementById('rezultatCheckbox3').innerHTML = rezultatCheckbox3;

var nameCheckbox4 = document.getElementsByName('nameCheckbox4')[0];
var nacenka = document.getElementsByName('nacenka')[0];
var skidka = document.getElementsByName('skidka')[0];
var rezultatCheckbox4 = ''
document.getElementById("nameCheckbox4").focus();
document.getElementById("nacenka").focus();
document.getElementById("skidka").focus();
if (rezultatCheckbox > 7.01)
rezultatCheckbox4 = (420 * parseFloat(nameCheckbox4.value) + parseFloat(nacenka.value) - parseFloat(skidka.value)).toFixed(0);
document.getElementById('rezultatCheckbox4').innerHTML = rezultatCheckbox4;

var nameCheckbox8 = document.getElementsByName('nameCheckbox8')[0];
var rezultatCheckbox8 = '460'
document.getElementById("nameCheckbox8").focus();
if (rezultatCheckbox < 2.01 && rezultatCheckbox > 0)
document.getElementById('rezultatCheckbox8').innerHTML = rezultatCheckbox8;

var nameCheckbox9 = document.getElementsByName('nameCheckbox9')[0];
var rezultatCheckbox9 = '450'
document.getElementById("nameCheckbox9").focus();
if (rezultatCheckbox < 4.01 && rezultatCheckbox > 2.01)
document.getElementById('rezultatCheckbox9').innerHTML = rezultatCheckbox9;

var nameCheckbox10 = document.getElementsByName('nameCheckbox10')[0];
var rezultatCheckbox10 = '430'
document.getElementById("nameCheckbox10").focus();
if (rezultatCheckbox < 7.01 && rezultatCheckbox > 4.01)
document.getElementById('rezultatCheckbox10').innerHTML = rezultatCheckbox10;

var nameCheckbox11 = document.getElementsByName('nameCheckbox11')[0];
var rezultatCheckbox11 = '420'
document.getElementById("nameCheckbox11").focus();
if (rezultatCheckbox > 7.01)
document.getElementById('rezultatCheckbox11').innerHTML = rezultatCheckbox11;

var nameCheckbox5 = document.getElementsByName('nameCheckbox5')[0];
var rezultatCheckbox5 = '1.28'
document.getElementById("nameCheckbox5").focus();
if (nameCheckbox5.checked)
rezultatCheckbox5 = (parseFloat(nameCheckbox5.value) / parseFloat(rezultatCheckbox5)).toFixed(2);
document.getElementById('rezultatCheckbox5').innerHTML = rezultatCheckbox5;

var nameCheckbox6 = document.getElementsByName('nameCheckbox6')[0];
var nacenkaser = document.getElementsByName('nacenkaser')[0];
var skidkaser = document.getElementsByName('skidkaser')[0];
var rezultatCheckbox6 = '1.28'
document.getElementById("nameCheckbox6").focus();
document.getElementById("nacenkaser").focus();
document.getElementById("skidkaser").focus();
if (nameCheckbox6.checked)
rezultatCheckbox6 = (parseFloat(nameCheckbox6.value) / parseFloat(rezultatCheckbox6) * 80 + parseFloat(nacenkaser.value) - parseFloat(skidkaser.value)).toFixed(0);
document.getElementById('rezultatCheckbox6').innerHTML = rezultatCheckbox6;

var nameCheckbox7 = document.getElementsByName('nameCheckbox7')[0];
var nacenkaser = document.getElementsByName('nacenkaser')[0];
var skidkaser = document.getElementsByName('skidkaser')[0];
var rezultatCheckbox7 = '1.28'
document.getElementById("nameCheckbox7").focus();
document.getElementById("nacenkaser").focus();
document.getElementById("skidkaser").focus();
if (nameCheckbox7.checked)
rezultatCheckbox7 = ((parseFloat(nameCheckbox7.value) / parseFloat(rezultatCheckbox7) * 80 + parseFloat(nacenkaser.value) - parseFloat(skidkaser.value)) / parseFloat(rezultatCheckbox5)).toFixed(0);
document.getElementById('rezultatCheckbox7').innerHTML = rezultatCheckbox7;

}
</script>

<input
type="checkbox" name="nameCheckbox" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox1" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox1" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox2" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox2" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox3" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox3" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox4" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox4" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox5" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox5" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox6" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox6" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox7" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox7" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox8" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox8" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox9" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox9" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox10" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox10" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nameCheckbox11" hidden="hidden" value="[xfvalue_ves]" id="nameCheckbox11" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nacenka" hidden="hidden" value="[xfgiven_nacenka][xfvalue_nacenka][/xfgiven_nacenka][xfnotgiven_nacenka]0[/xfnotgiven_nacenka]" id="nacenka" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="skidka" hidden="hidden" value="[xfgiven_skidka][xfvalue_skidka][/xfgiven_skidka][xfnotgiven_skidka]0[/xfnotgiven_skidka]" id="skidka" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="nacenkaser" hidden="hidden" value="[xfgiven_nacenkaser][xfvalue_nacenkaser][/xfgiven_nacenkaser][xfnotgiven_nacenkaser]0[/xfnotgiven_nacenkaser]" id="nacenkaser" onclick="onclickCheckbox()" checked="checked"/>
<input
type="checkbox" name="skidkaser" hidden="hidden" value="[xfgiven_skidkaser][xfvalue_skidkaser][/xfgiven_skidkaser][xfnotgiven_skidkaser]0[/xfnotgiven_skidkaser]" id="skidkaser" onclick="onclickCheckbox()" checked="checked"/>


<output
id="rezultatCheckbox1"></output>
<output
id="rezultatCheckbox2"></output>
<output
id="rezultatCheckbox3"></output>
<output
id="rezultatCheckbox4"></output>



P.S. [xfvalue_ves] - вместо этого тега подставляется вес изделия.


user posted image
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.