Показать сообщение отдельно
  #9 (permalink)  
Старый 07.12.2012, 14:47
Аватар для mi.rafaylik
Кандидат Javascript-наук
Отправить личное сообщение для mi.rafaylik Посмотреть профиль Найти все сообщения от mi.rafaylik
 
Регистрация: 07.12.2012
Сообщений: 113

Попутно input заменил на select, а родительский div на p.

Решение проблемы 1:
В строке 8 нужно было не просто указать значение value, а указать, что оно добавляется к уже имеющемуся id!
было: '-' + 'value'
стало: 'id' + '-' + 'value'

Решение проблемы 2:
Для элемента <select> нужен не .click() а .change() !
С этим кодом заработало:
$(document).ready(function(){
	$('#products p').change(function(){
	var p = $(this);
	var a = p.children('a');
	var s = p.children('select').eq(0);
	var value = s.val();
	var a_id = a.attr('id');
	var arr = a_id.split('id' + '-');
	var new_id = arr[0] + arr[1] + '-' + value;
	$(a).attr('id', new_id);
	});
});

Последний раз редактировалось mi.rafaylik, 07.12.2012 в 15:16.
Ответить с цитированием