Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.03.2016, 03:15
Аспирант
Отправить личное сообщение для Vincent Vega Посмотреть профиль Найти все сообщения от Vincent Vega
 
Регистрация: 21.02.2016
Сообщений: 53

запись в input значения сгенерированного div
HELP!

есть гавнокод: который генерирует блок опций:
$("input[name='opt']").click(function(){
		var inp = $(this);
		var elems = $(this).attr('id');
		var opti = $('div.wrapp_option');
		$(opti).fadeOut(200);
		setTimeout(function(){
		opti = 
			$('<div/>',{class:'wrapp_option',id:elems}).appendTo('td.slot#'+elems).fadeIn(300);
			$('<div/>',{class:'mah',id:'confirm',text:'Подтвердить'}).css({'display':'block'}).appendTo(opti);
			$('<div/>',{class:'mah',id:'deconfirm',text:'Отменить'}).appendTo(opti);
			$('<div/>',{class:'mah',id:'upd',text:'Обновить'}).appendTo(opti);
			$('<div/>',{class:'mah',id:'del',text:'Удалить'}).appendTo(opti);
			$('<div/>',{class:'mah',id:'by',text:'Передать'}).appendTo(opti);
		},200);
	});


есть второй такойже г.код с которого нужно втыкать значения:

так не втыкаются,
$('.slot').on('click','.mah',function(){
                var blok = $(this);
		var vals = $(this).attr('id');
		var idn = $('div.wrapp_option').attr('id');
		var inp = $('input#'+idn);
		$(inp).val(vals);
		$('div.wrapp_option').fadeOut(200).remove();
		
	});


так тоже,

$(inp).load(blok).val($(this).html());


нужно в value input записывать при клике id блка по которому кликнули.
jQuery изучаю недавно

Последний раз редактировалось Vincent Vega, 02.03.2016 в 03:18.
Ответить с цитированием
  #2 (permalink)  
Старый 02.03.2016, 13:27
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Vincent Vega,
Вы используете один и тот же id для разных элементов DOM, из-за этого все косо работает
Ответить с цитированием
  #3 (permalink)  
Старый 02.03.2016, 13:51
Аспирант
Отправить личное сообщение для Vincent Vega Посмотреть профиль Найти все сообщения от Vincent Vega
 
Регистрация: 21.02.2016
Сообщений: 53

Сообщение от Dilettante_Pro Посмотреть сообщение
Vincent Vega,
Вы используете один и тот же id для разных элементов DOM, из-за этого все косо работает
Но у них у всех разные классы и тем более, в большинстве случаев, разные html тэги. Неужели в этом косяк?
Ответить с цитированием
  #4 (permalink)  
Старый 02.03.2016, 14:12
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Vincent Vega,
Атрибут id

Задаёт стилевой идентификатор — уникальное имя элемента, которое используется для изменения его стиля и обращения к нему через скрипты. Идентификатор в коде документа должен быть в единственном экземпляре, иными словами, встречаться только один раз.
https://webref.ru/html/attr/id
Ответить с цитированием
  #5 (permalink)  
Старый 02.03.2016, 14:19
Аспирант
Отправить личное сообщение для Vincent Vega Посмотреть профиль Найти все сообщения от Vincent Vega
 
Регистрация: 21.02.2016
Сообщений: 53

спасибо! буду думать...
Ответить с цитированием
  #6 (permalink)  
Старый 02.03.2016, 14:45
Аспирант
Отправить личное сообщение для Vincent Vega Посмотреть профиль Найти все сообщения от Vincent Vega
 
Регистрация: 21.02.2016
Сообщений: 53

Сообщение от Dilettante_Pro Посмотреть сообщение
,
Атрибут id

Задаёт стилевой идентификатор — уникальное имя элемента, которое используется для изменения его стиля и обращения к нему через скрипты. Идентификатор в коде документа должен быть в единственном экземпляре, иными словами, встречаться только один раз.
https://webref.ru/html/attr/id
Таки огромное спасибо!!!

var elems;
	$("input[name='options']").click(function(){
		elems = $(this).attr('id');
		var opti = $('div.wrapp_option');
		$(opti).fadeOut(200);
		setTimeout(function(){
		opti = 
			$('<div/>',{class:'wrapp_option',id:'wr_'+elems}).appendTo('td.slot#sl_'+elems).fadeIn(300);
			$('<div/>',{class:'mah',id:'confirm',text:'Подтвердить'}).appendTo(opti);
			$('<div/>',{class:'mah',id:'deconfirm',text:'Отменить'}).appendTo(opti);
			$('<div/>',{class:'mah',id:'upd',text:'Обновить'}).appendTo(opti);
			$('<div/>',{class:'mah',id:'del',text:'Удалить'}).appendTo(opti);
			$('<div/>',{class:'mah',id:'by',text:'Передать'}).appendTo(opti);
		},200);
	});
	
	$('.slot').on('click','.mah',function(){
		var vals = $(this).attr('id');
		var inp = $('input.options#'+elems);
		$(inp).val(vals);
		$('div.wrapp_option').fadeOut(200).remove();
		elems = 0;
	});


вот так все заработало, даже то что не работало

респект за материал по id
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Множественные значения в input - ЗА ВОЗНАГРАЖДЕНИЕ! Pb160 Events/DOM/Window 0 03.08.2015 12:29
изменение значения input при смене значения select galart jQuery 4 30.01.2015 19:39
Запись значения в input files EvPut jQuery 1 22.07.2014 09:10
Записать в один input значения нескольких input -=fluffy=- Элементы интерфейса 2 17.04.2014 17:40
При добавлении DOCTYPE "плывут" размеры input type=text Demath (X)HTML/CSS 4 08.07.2012 19:27