Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.06.2018, 15:40
Профессор
Отправить личное сообщение для Sav2907 Посмотреть профиль Найти все сообщения от Sav2907
 
Регистрация: 15.09.2015
Сообщений: 180

Проблема с переменной
Проблема следующая:
1. кликаем по Категория 1, затем <<<<
2. кликаем по Категория 2, затем клик result
Алерт показывает 1 а потом 2, а нужно только 2
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<p class="back"><<<<<</p>
<div class="show_1">
<p class="category" data-type="1">Категория 1</p>
<p class="category" data-type="2">Категория 2</p>
<p class="category" data-type="3">Категория 3</p>
</div>
<div class="show_2" style="display: none;">
	<p class="result">result</p>
</div>
<script>
$('.back').on('click', function(){
	$('.show_1').show();
	$('.show_2').hide();
});
$('.category').on('click', function(){
	$('.show_2').show();
	$('.show_1').hide();
	var a = $(this).data('type');
	$('.result').on('click', function(){
		alert(a);
	});
});
</script>
Ответить с цитированием
  #2 (permalink)  
Старый 04.06.2018, 15:50
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,795

Так попробуйте:
var type = 1;

$('.back').on('click', function() {
    $('.show_1').show();
    $('.show_2').hide();
});

$('.category').on('click', function() {
    $('.show_2').show();
    $('.show_1').hide();

    type = $(this).data('type');
});

$('.result').on('click', function() {
    alert(type);
});

ps. строки 4-5 и 9-10 глаза мозолят, их как-то можно объединить )
Ответить с цитированием
  #3 (permalink)  
Старый 04.06.2018, 15:56
Профессор
Отправить личное сообщение для Sav2907 Посмотреть профиль Найти все сообщения от Sav2907
 
Регистрация: 15.09.2015
Сообщений: 180

Ваш вариант не работает
Ответить с цитированием
  #4 (permalink)  
Старый 04.06.2018, 16:01
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,795

Сообщение от Sav2907
Ваш вариант не работает
Не верю. https://jsfiddle.net/yotmucby/
Ответить с цитированием
  #5 (permalink)  
Старый 04.06.2018, 16:02
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<p class="back"><<<<<</p>
<div class="show_1">
<p class="category" data-type="1">Категория 1</p>
<p class="category" data-type="2">Категория 2</p>
<p class="category" data-type="3">Категория 3</p>
</div>
<div class="show_2" style="display: none;">
	<p class="result">result</p>
</div>
<script>
		var a;
$('.back').on('click', function(){
	$('.show_1').show();
	$('.show_2').hide();
});
$('.category').on('click', function(){
	$('.show_2').show();
	$('.show_1').hide();
	a = $(this).data('type');
});
	$('.result').on('click', function(){
		alert(a);
	});
</script>
Ответить с цитированием
  #6 (permalink)  
Старый 04.06.2018, 16:07
Профессор
Отправить личное сообщение для Sav2907 Посмотреть профиль Найти все сообщения от Sav2907
 
Регистрация: 15.09.2015
Сообщений: 180

Nexus, j0hnik,
Спасибо
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сохранение переменной для дальнейшего использования Eser Общие вопросы Javascript 9 28.06.2012 16:56
Проблема с обработкой ескольких .hover() anocean jQuery 3 15.06.2012 22:43
Проблема с передачей массива ajax-ом maximale AJAX и COMET 1 11.02.2012 02:20
Ajax-запрос к базе - проблема с передачей переменной wfire AJAX и COMET 2 29.01.2012 04:29
ajax чат проблема с записью сообщения в базу данных mysql. Niksik AJAX и COMET 4 15.01.2012 14:04