[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как сделать "Добавить к сравнению" в background?
Infinity
Для интернет-магазина нужно сделать

1) на карточки товара ссылку Добавить с сравнение / Убрать из сравнения
2) в списке товаров checkbox добавить в сравнение

Клик на ссылке и выделение checkbox должно запускать скрипт в background, при этом страница пользователя не должна меняться.

Как это сделать средствами PHP?
inpost
"Клик на ссылке и выделение checkbox должно запускать скрипт в background, при этом страница пользователя не должна меняться."
- Это JavaScript, а не PHP.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Infinity
ok, как с JS запустить такой скрипт?
inpost
Ну, я думаю, изучить основы. Учесть, что ты не знаешь, что такое делается на JS, то я бы дал тебе пару месяцев на изучение материала, чтобы ты мог уже подобное написать самому.
Ты знаешь JS?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Infinity
Я знаю основы JS. Я прошу помочь и прислать пример кода, который делает эту задачу.
inpost
Infinity
Если ты знаешь, то ты это сделаешь без проблем за несколько часиков. Ты опиши конкретно, что ты не можешь сделать, давай обсудим конкретные моменты и поможем тебе. Бесплатно дать готовенькое - это не про нас.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Infinity
Первый конкретный момент такой: как из JS запустить скрипт в background?
Игорь_Vasinsky
JS работает на клиентской стороне, он работает в реал-тайм. - он не будет без тебя ничего перегружать.

Если не нужно перегружать страницу - значит нужно данные подгружать "извне"
а в этом всегда спасает AJAX

значит достаточно, допустим создать пустой эл-т <div id="compare"></div>

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

самое простое - это в этот блок добавлять товары для сравнения (простым JS без AJAX) + добавить ссылку для перехода в отдельный раздел сравнения

а вот в этом уже разделе - получить все ID товаров и вывести их характеристики

примитив
<html>
<
head>
<
script type="text/javascript">
//Здесь хранятся все id товаров, добавленных к сравнению
Compare = new Array();

function add_compare(id){
//Блок сравнения
var divCompare = document.getElementById('compare');
//получаем из span нужный товар
var product = document.getElementById('p'+id).innerHTML;
//формируем строку с новым товаром для блока сравнения
newcompare = '<div id="b'+id+'">' + product + ' <a href="#" onclick="remove_compare("b'+id+'")">del</a></div>';
//добавляем товар в блок сравнения
divCompare.innerHTML = divCompare.innerHTML + newcompare;
//записываем id Товара в глоб. массив
Compare.push(id);

return false;
}

function remove_compare(id){
//remove div id = bN from divCompare
//remove id product from Campare array

}
</script>
</
head>
<
body>

<!--
Список товаров-->
<?php for($i=1; $i<10; $i++):?>
<span id="p<?=$i;?>">Товар c ID=<?=$i;?></span> <a href="#" onclick="add_compare(<?=$i;?>)">добавить к сравнению</a><br/>
<?php endfor;?>

<div id="compare">
<
h3>Сравнение:</h3>
</
div>

</
body>
</
html>


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

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