Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Проблема Jquery+Ajax во всплывающем окне (https://javascript.ru/forum/jquery/61846-problema-jquery-ajax-vo-vsplyvayushhem-okne.html)

jamesbond 11.03.2016 16:53

Проблема Jquery+Ajax во всплывающем окне
 
Всем привет.
На сайте есть каталог товаров. При нажатии на товар всплывает бутстраповское модальное окно с карточкой товара.
В этой карточке есть кнопка добавления в корзину. После добавления товара в корзину всплывающее окно закрывается.

Если я первый раз добавляю в корзину товар из всплывающего окна, то в корзину добавляется, как и положено 1 товар, если второй раз открою всплывающее окно, то добавляется уже 2 товара, в третий раз - 3 и так далее. Если обновить страницу. Не пойму в чем дело. Как будто где-то счетчик этих окон стоит.

Теперь от слов к коду:

function ajaxpostshow(urlres, datares, wherecontent ){
									$.ajax({
										type: "POST",
										cache:false,
										url: urlres,
										data: datares,
										dataType: "html",
										success: function(fillter){
											$(wherecontent).html(fillter);
											console.log('Переменная данных содержит:'+datares.ajaxbasketcount);
									   }
								  });
							}
...............................
...............................
...............................
							// добавление в корзину из всплывающего окна
							$('#popup_detail.modal').on("click",".btn-cart-single.btn-cart",function(){
									var id = $(this).attr('rel');
									var count = $(this).parents(".add-to-box").find("#QUANTITY_INPUT_"+id).val();
									var ajaxcount = {'ajaxaddid':id,'ajaxbasketcount':count,'ajaxaction':'add'};
									ajaxpostshow("/ajax/basket.php", ajaxcount, "#small_basket" );
									return false;
							});
...............................
...............................
...............................


Этот же код из детальной карточки товара (не всплывающего окна) работает корректно.

Помогите, пожалуйста, разобраться.

Viral 18.03.2016 22:46

<script src="http://code.jquery.com/jquery-1.12.2.min.js"></script>
<script>
$(function () {
		$('#div1').click(function(){
			$('#div2').click(function(){
				alert('натыкался? попробуй сам сделать выводы..');
			});
		});
})();
</script>
<div id="div1">тыкни пять раз сюда</div>
<div id="div2">а потом один раз сюда</div>

jamesbond 21.03.2016 17:55

Спасибо за наводку, код поправил, все работает.


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