запись в 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,
Вы используете один и тот же id для разных элементов DOM, из-за этого все косо работает |
Цитата:
|
Vincent Vega,
Атрибут 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 |
| Часовой пояс GMT +3, время: 23:39. |