Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Покупательская корзина (https://javascript.ru/forum/misc/13711-pokupatelskaya-korzina.html)

Luter1984 13.12.2010 11:07

Сделал как описано выше, появилась моя кнопка, но почему-то она на отрез отказывается посылать данные... Может быть причина в том, что у меня далее используется скриптом значение name='my-add-button' с именем стандартной кнопки ...

ksa 13.12.2010 11:49

Цитата:

Сообщение от Luter1984
Может быть причина в том, что у меня далее используется скриптом значение name='my-add-button' с именем стандартной кнопки

Таки потесть это.
Вариант для теста

...
<div id='sub4' onclick='alert("Ok")'>
       <a href='#'  title='Заказать'>
	 Заказать
      </a>
</div>
...

Luter1984 13.12.2010 11:57

Никакой реакции на:
alert("Ok")'

ksa 13.12.2010 12:48

Luter1984, значит рой глубже. Кто-то или что-то перехватывает событие раньше твоей кнопки...

Luter1984 13.12.2010 13:18

У меня используются сессии, может быть проблема из-за них...
// INCLUDE JCART BEFORE SESSION START
include "jcart/jcart.php";
// START SESSION
session_start();
// INITIALIZE JCART AFTER SESSION START
$cart =& $_SESSION["jcart"]; if(!is_object($cart)) $cart = new jcart();

Данные из формы перехватываются в файле: jcart-config.php в виде:
// THE HTML NAME ATTRIBUTES USED IN YOUR ADD-TO-CART FORM
$jcart['item_id']		= 'my-item-id';		// ITEM ID
$jcart['item_name']	= 'my-item-name';	// ITEM NAME
$jcart['item_price']	= 'my-item-price';		// ITEM PRICE
$jcart['item_qty']		= 'my-item-qty';		// ITEM QTY
$jcart['item_add']		= 'my-add-button';	// ADD-TO-CART BUTTON

/***********************/
Спасибо за терпение :)

ksa 13.12.2010 13:37

Luter1984, ты не путай серверные дела с клиентскими... :)
ПХП и сессии это все дело серверное... А онклик с алертом у тебя не отрабатывают как ты ожидаешь на клиенте.
Пока не увидишь "Ок" на клиенте субмида не получишь...:no:

ksa 13.12.2010 13:37

Цитата:

Сообщение от Luter1984
Спасибо за терпение

Да ты плюсуй, плюсуй... Не стесняйся. :D

Luter1984 13.12.2010 14:10

Проблема в синтаксисе.
Блок ниже не работает:
<div id='sub4' onclick='alert("jr")'>
     <a href='#'  title='Заказать'>
	 Заказать
      </a>
</div>

Так как он вызывается внутри тела фунции printf(".....",...) :
Если передать методу alert числовое значение (без кавычек внутри):
<div id='sub4' onclick='alert(78787878)'>
     <a href='#'  title='Заказать'>
	 Заказать
      </a>
</div>

Он прекрасно запускается...
Но как тогда поступить со строкой кода:
<div id='sub4' onclick='document.getElementById("MyFrm").submit()'

Получается здесь срабатывает тот же механизм...

ksa 13.12.2010 14:13

Цитата:

Сообщение от Luter1984
Но как тогда поступить со строкой кода:
<div id='sub4' onclick='document.getElementById([B][I]"MyFrm"[/I][/B]).submit()'

Экранируй! :)

<div id='sub4' onclick='alert("Вот в чем \"фокус\"!")'>
     <a href='#'  title='Заказать'>
	 Заказать
      </a>
</div>

Luter1984 13.12.2010 14:49

Да экранирование сработало, но работает не так как хотелось :)
1. Стало видно, что страница перезагружается;
2. При нажатии на любую из кнопок - заказать отправляется информация только по первому товару;
3. При нажатии на кнопку не срабатывает надпись снизу - товар добавлен.
Наверное не совсем ясно выразился, поэтому картинка снизу...
<form method='post' action='' class='jcart' name='mycart' id='MyFrm'>
<input type='hidden' name='my-item-id' value='%s' />
<input type='hidden' name='my-item-name' value='%s' />
<input type='hidden' name='my-item-price' value='%s' />
<input type='hidden' name='my-item-qty' value='1' size='3' />
<input type='hidden' name='my-add-button' value='В корзину' class='button'/>										</form>											
<div id='sub4' onclick='document.getElementById(\"MyFrm\").submit()'>
	<a href='' title='Заказать' class='button'>
		Заказать
	</a>
</div>



Часовой пояс GMT +3, время: 01:33.