| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Никита Козин 08.02.2006 12:38 / 08.02.2006 13:14
@main[]
# создаем тестовую табличку:
$t[^table::create{id
^for[i](1;17){=$i=
}}]
# пример работы метода:
<table border="1" cellspacing="0" cellpadding="5" width="300" style="font-size: x-small">
^cmenu[$t](2){<tr^if((^t.offset[] / $cols) % 2){ bgcolor="#efefef"}>}{
<td>$t.id</td>
}{
<td><br></td>
}[</tr>]
</table>
# end @main[]
# table - исходная таблица
# cols - количество ячеек в строке
# tr_start и tr_stop - открывающий и закрывающий тег <tr>
# code - код, для каждой ячейки
# code_empty - код для оставшихся пустых ячеек (не обязательный параметр)
# если не задан - пустые ячейки не выводятся (они излишни в XML)
@cmenu[table;cols;tr_start;code;code_empty;tr_end][_tr_end]
$_tr_end[^if(def $tr_end){$tr_end}{$code_empty}]
$caller.cols($cols)
^table.menu{
^if(!(^table.offset[] % $cols)){$tr_start}
$code
^if(^table.offset[] == $table - 1 && def $tr_end){
^for[n](1;$cols * ^math:ceiling($table / $cols) - $table){$code_empty}
}
^if(^table.offset[] % $cols == $cols - 1){$_tr_end}
}
# end @cmenu[]2Misha v.3