Возможно ли динамическое изменение шаблона rowBodyTpl?
Приветствую вас!
Имеется grid, в который выводится из базы некая таблица. К grid-у прикручен плагин rowexpander, у которого в качестве параметра имеется rowBodyTpl. С его помощью хотелось бы отобразить не только данные из изначальной таблицы, но и информацию из связанной с ней. Загвоздка в том, что каждой строке первой таблицы может соответствовать разное кол-во строк из связанной. Например, первая таблица - это список покупателей, а вторая - список книг, которые были куплены этими покупателями. Так вот, выбираем мы покупателя и получаем список книг, купленных этим покупателем. Загвоздка, ессесно, не в получении инфы из базы, а в том, чтобы заставить rowexpander отображать разное количество дивов в зависимости от числа купленных книг. Предполагалось сделать что-то типа такого:
function tplBooks(customer){
books = количество книг, купленных выбранным покупателем;
if (books == 0) {ничего не добавляем} else {
var n=1;
while (n<books){
return '<div class = tpl><a href="file-download.php?id='+customer+'>Книга '+n+'</a></div>,'
}
}
Два дня попыток подсунуть подобную конструкцию (да вообще любую функцию) rowexpander-у наводят меня на мысль, что я использую неподходящий компонент.... Или тот? Тогда - как???? :help: |
понятия не имею что делает плагин expander но за его отрисовку отвечает метод renderer, его тебе и нужно переписать так как тебе надо в своём классе.
//вот как работает сейчас
renderer: function(value, metadata, record, rowIdx, colIdx) {
if (colIdx === 0) {
metadata.tdCls = 'x-grid-td-expander';
}
return '<div class="x-grid-row-expander"> </div>';
},
|
| Часовой пояс GMT +3, время: 11:59. |