Редкий клиент примет работу как она есть. Обычно изощренный ум клиента исхитрится выродить такое , что ты, разумеется, никак не ожидаешь. Как ни странно, в этот раз я жутко обрадовался этой задачке, ибо, уже изрядно устал от типовых задач. А тут такое, на те, получите. Если ближе к делу , то задание кратко звучит так: на странце товаров есть таблицы, нужно чтобы под каждой колонкой были кнопки "заказать", при нажати форма всплывает и тд...
Почесав небритый подбородок понес свое тело на диван, дабы полежать и "бумажно" подумать о сие деле. Решение пришло так же неожиданно, как обычно приходит дедлайн.
Ну, собственно сам код:
Почесав небритый подбородок понес свое тело на диван, дабы полежать и "бумажно" подумать о сие деле. Решение пришло так же неожиданно, как обычно приходит дедлайн.
Ну, собственно сам код:
$(function() { //есть ли такой обьект? if($('.add-btns')!=undefined){ //Наша таблица с классом = add-btns var $tbl = $('.add-btns'); // смотрим сколько стобцов у таблицы var tr = $tbl.find('tr').first().find('td'); var trTxt = '< tr class="tr-btns">'; for(var i = 0; i < tr.length-1; i++){ trTxt+= ' заказать '; } trTxt+= ''; //добавляем в конец таблицы еще одну строку с кнопками $tbl.append(trTxt); //Вешаем обработчик $('.tbl-btn').click(function(){ /* Вызываем окно. В данном проекте вызывается таким образом. drevo_form_show(9,''); */ var i = $(this).data('i'); i+=2; var $tbl = $('.add-btns'); var txt = ''; //Добавляем заголовок txt+=$('h1').text(); txt+=';'; var arrTr= $tbl.find('tr'); for(var j = 0; j < arrTr.length; j++){ var name =$(arrTr[j]).find('td:first').text(); var val =$(arrTr[j]).find('td:nth-child('+i+')').text(); if(name!=''){ txt+=name+' - '; } if(val!='' && val!='заказать'){ txt+=val; } txt+=';'; } console.log(txt); //Добавляем данные в форму. У меня невилимый. $('.hidden-input-data').val(txt); }); } });
Все
Комментариев нет:
Отправить комментарий