@AndyLarcin

Jquery, его возможности?

Добрый день. Вопрос по возможностям Jquery?
Смотрите пример:
var s = '<col width="20%"><col width="20%"><col width="20%"><col width="20%"><col width="20%">';
        s += '<tr style="background-color:#ebebeb;">';
        s += '<td colspan="3" class="text_ans" align="left">'+"<?php print lang('ЖЕО ','ЖЭК ')?>"+ans['jek']+'<br/>'+"<?php print lang('о/р ','л/с ')?>"+ans['account']+'<br/>'+ans['address']+', КВ.'+ans['flat']+'</td>';
        s += '<td colspan="2" class="text_ans" align="right">'+periodstr(ans['period'])+'<br/><br/><br/></td>';
        s += '</tr>';



        s += '<tr height="8px" />';
        s += '<tr>';
		s += '<td colspan="5" align="left" class="field_text">Ваш e-mail<br/><input id="mail" class="input_box" size="30" value=""/></td>';
        s += '</tr>';
        s += '<tr height="8px" />';
        
        for (var bill_num = 0; bill_num < bill_count; bill_num++) {
            s += '<input type="hidden" id="bill_id'+bill_num+'" value="'+bill_id[bill_num]+'">';
                
            s += '<tr>';
            s += '<td colspan="1" class="text bill_title" align="left">'+"<?php print lang('РАХУНОК ','СЧЕТ ')?>"+(bill_num+1)+'</td>';
            s += '<td colspan="4" class="text bill_title" align="right">'+bill_name[bill_num]+'</td>';
            s += '</tr>';
         
            s += '<tr>';
            s += '<td colspan="2" class="text bill_detal" align="left">'+bill_bank[bill_num]+'<br/>'+"<?php print lang('код банку ','код банка ')?>"+bill_mfo[bill_num]+'<br/>'+"<?php print lang('р/р ','р/с ')?>"+bill_account[bill_num]+'</td>';
            s += '<td colspan="3" class="text bill_detal" align="right">'+bill_owner[bill_num]+'<br/>'+"<?php print lang('ЄДРПОУ ','ЕДРПОУ ')?>"+bill_edrpou[bill_num]+'<br/><br/></td>';
            s += '</tr>';
            $("#services").html(s);

Затем реализация в таблице:
<div id="pay_block" style="display:none;position:relative">
                <div class="logo" id="logo"></div>
                <div class="header"><div class="title"><?=$title;?></div></div>

                <div class="list_element" id="list_element_11" onclick="check_form2(document.pay);" onkeyup="javascript:if(13==event.keyCode){check_form2(document.pay);}"><table id="services" cellpadding=0 cellspacing=0 width="100%" style="table-layout:fixed"></table></div>

                <table class="main" width="100%" align="center" cellpadding=5 cellspacing=0>


                <tr>
                    <th class="button_area" align="right">
                        <button class="button back short" onclick="back1()" onkeyup="javascript:if(13==event.keyCode){back1();}" >Назад</button>
                        <!--<button class="button next short" onclick="check_form(document.pay);" onkeyup="javascript:if(13==event.keyCode){check_form(document.pay);}"><?php print lang('Далі','Далее')?></button>-->
                    </th>
                </tr>
                </table>
            </div>

Оно выводит скопом 3 блока, а нужно вывести только :
for (var bill_num = 0; bill_num < bill_count; bill_num++) {
            s += '<input type="hidden" id="bill_id'+bill_num+'" value="'+bill_id[bill_num]+'">';
                
            s += '<tr>';
            s += '<td colspan="1" class="text bill_title" align="left">'+"<?php print lang('РАХУНОК ','СЧЕТ ')?>"+(bill_num+1)+'</td>';
            s += '<td colspan="4" class="text bill_title" align="right">'+bill_name[bill_num]+'</td>';
            s += '</tr>';
         
            s += '<tr>';
            s += '<td colspan="2" class="text bill_detal" align="left">'+bill_bank[bill_num]+'<br/>'+"<?php print lang('код банку ','код банка ')?>"+bill_mfo[bill_num]+'<br/>'+"<?php print lang('р/р ','р/с ')?>"+bill_account[bill_num]+'</td>';
            s += '<td colspan="3" class="text bill_detal" align="right">'+bill_owner[bill_num]+'<br/>'+"<?php print lang('ЄДРПОУ ','ЕДРПОУ ')?>"+bill_edrpou[bill_num]+'<br/><br/></td>';
            s += '</tr>';
            $("#services").html(s);
Этот блок, подскажите как это сделать, буду очень благодарен.
77b59b08b61b46d7a0f8902c4879740f.jpg
Такого плана.
  • Вопрос задан
  • 2622 просмотра
Пригласить эксперта
Ответы на вопрос 5
если честно, из вопроса не совсем понятно, как связан код из "Затем реализация в таблице:" с остальным.
но есть подозрение, что вот это
$("#services").html(s);
должно быть вне цикла for.
Ответ написан
@AndyLarcin Автор вопроса
Просто там весь код в форе, это прорисовка таблицы и всех данных, суть задачи состоит в том что б разбить вывод на 2 блока в 1 блок шапка, и по нажатию шапки код строго который в этом блоке.
То есть 1 "страничка" у нас там 3 - 4 шапки, и по нажатию на одну из них там нужно видить только то что в ней, а не всю реализацию странички. Как-то так не могу придумать как решить эту проблему?
Ответ написан
@asdz
Мне кажется если бы вы создавали дом элементы, а не конкатенировали строки в цикле, то избежали бы проблем и улучшили читабельность кода.
Ответ написан
mlnkv
@mlnkv
JavaScript Developer
Нет, так дела не делаются, у вас там такие спагетти кода, что черт ногу сломит)
Ответ написан
Symphony
@Symphony Куратор тега JavaScript
Выставьте код сюда хотя б, мне лично в падлу это делать, как и многим, я думаю
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы