Показать сообщение отдельно
  #3 (permalink)  
Старый 18.11.2016, 17:03
Аватар для dd_smol
Кандидат Javascript-наук
Отправить личное сообщение для dd_smol Посмотреть профиль Найти все сообщения от dd_smol
 
Регистрация: 08.03.2015
Сообщений: 131

Все же очевидно вы пытаетесь повесить обработчик на те элементы которые еще не созданы.

$('.add-cut').on('click', '.add, .cut', function ( e ) {
	if ( $( e.target ).hasClass('add') ) {
		$('.li').after('<ul class="l2"><li class="it1">Название</li><li class="item it2">Цена</li></ul>');
		$('.add-cut').html('<button class="cut">Удалить</button>');
	} else {
		$('.add-cut').html('<button class="add">Добавить</button>');
	}
});


Или так.

$('.add-cut').on('click', '.add, .cut', function ( e ) {
	var targetClass = e.target.className;

	$( e.target )
		.addClass( targetClass == 'add' ? 'cut' : 'add' )
		.text( targetClass == 'add' ? 'Удалить' : 'Добавить' )
		.removeClass( targetClass )
		.hasClass('add') &&
			$('.li').after('<ul class="l2"><li class="it1">Название</li><li class="item it2">Цена</li></ul>');
});

Последний раз редактировалось dd_smol, 18.11.2016 в 17:36.
Ответить с цитированием