Здравствуйте.
Извиняюсь, но я в java несилен, поэтому прошу вашей помощи.
Сделал подгрузку страницы в div, всё работает, всё хорошо.
Но есть одна проблема.
Есть модуль фильтрации по товарам на сайте, есть кнопка выбора валюты в грн. и евро. То есть при выборе евро подгружается страница с ценами товаров в евро и подгружается выбор диапазона цены в евро в модуль фильтрации. С этим проблем нет, всё работает идеально, но вот когда перехожу на следующую страницу, то обновляется сайт и загружается страница которая стоит первоочередной в подгрузке (то есть грн.) и отображается вторая страница с ценами в грн., а не в евро.
Вот сайт, чтобы вы посмотрели и поняли о чем я.
Так как не знаю, как подробней объяснить.
http://etl.kl.com.ua/tehnika/
Можно ли как-то реализовать запоминание через куки?
Или по другому сделать подгрузку контента.
Пытался реализовать ajax переход по страницам, но не получается.
Совсем тупой я в java.
Собственно код вывода переключателя:
<div class="source source-1">₴</div>
<div class="source source-2">€</div>
<div class="target target-1">цены в грн.</div>
<div class="target target-2">цены в евро</div>
Сам скрипт:
var HIDDEN_CLASS_NAME = 'hidden'
var TARGET_CLASS_NAME = 'target'
var SOURCE_CLASS_NAME = 'source'
var targetIdToShow = 1
function main() {
var targets = getElements(TARGET_CLASS_NAME)
var sources = getElements(SOURCE_CLASS_NAME)
sources.forEach(function (sourceNode) {
var sourceNodeId = extractId(sourceNode, SOURCE_CLASS_NAME)
sourceNode.addEventListener('click', function () {
showTarget(targets, sourceNodeId)
})
})
showTarget(targets, targetIdToShow)
}
function getElements(type) {
return [].slice.call(document.querySelectorAll('.' + type)).sort(function (targetNode1, targetNode2) {
var target1Num = extractId(targetNode1, TARGET_CLASS_NAME)
var target2Num = extractId(targetNode2, TARGET_CLASS_NAME)
return target1Num > target2Num
})
}
function extractId(targetNode, baseClass) {
var currentClassIndex = targetNode.classList.length
while (currentClassIndex--) {
var currentClass = targetNode.classList.item(currentClassIndex)
var maybeIdNum = parseInt(currentClass.split('-')[1])
if (isNaN(maybeIdNum)) {
continue
}
var classStrinToValidate = baseClass + '-' + maybeIdNum
if (classStrinToValidate === currentClass) {
return maybeIdNum
}
}
}
function showTarget(targets, targetId) {
targets.forEach(function (targetNode, targetIndex) {
var currentTargetNodeId = extractId(targetNode, TARGET_CLASS_NAME)
if (currentTargetNodeId === targetId) {
targetNode.classList.remove(HIDDEN_CLASS_NAME)
} else {
targetNode.classList.add(HIDDEN_CLASS_NAME)
}
})
}
main()
Буду очень признателен за помощь )