Uživatelské nástroje

Nástroje pro tento web


techdoc:hiddenparam_cellrenderer

Modifikace vzhledu browse

Za pomoci hidden parametru CellRenderer je možné při renderování browse modifikovat vzhled jednotlivých buněk. Při renderování každé buňky se volá funkce zadaná v hodnotě parametru. Předpokládá se že funkce je zapsaná přímo ve stránce v tagu „script“.

Zápis hidden parametru pro funkci myCellRenderer

<input type="hidden" name="CellRenderer" value="myCellRenderer">

Na vstupu má funkce následující atributy a předpokládá se návrat modifikovaného atributu defaulthtml nebo null, pokud nic nemodifikujeme.

Argumenty každé takto volané funkce jsou:

  • row - číslo řádku
  • columnfield -pole (jqx)
  • value - hodnota pole
  • defaulthtml - DOM objekt buňky browse
  • columnproperties - vlastnosti sloupce (jqx)
  • field - název pole
  • rowData - rowData - dvourozměrné pole s hodnotami všech položek v datovém řádku, nad nímž se funkce volá. Prvním rozměrem je jméno položky, druhým pak její hodnota.

Následná funkce může vypadat třeba takto:

Provádí Removing trailing zeros / potlačení koncových nul u sloupce HDPRODCENA

<script>
var formatNumber = function (num) {
  return new Intl.NumberFormat("cs-CZ", {
    minimumFractionDigits: 0,
    maximumFractionDigits: 20 // dostatečně velké, aby zachytilo všechny
  }).format(num);
}
var myCellRenderer = function (row, columnfield, value, defaulthtml, columnproperties, field, rowData) {
 if (field.name == 'HDPRODCENA'){
   if (value != null || value != "")
     defaulthtml.innerText = formatNumber(value)
 }
 return defaulthtml;
};
</script>

Dalším příkladem může být doplnění třídy a na základě této třídy úprava vizualizace.

<!-- styl pro třídu nonNull-->
<style>
.nonNull {
 /*jakákoli CSS vlastnost*/
}
</style>
<!-- doplnění třídy nonNull-->
<script>
var myCellRenderer = function (row, columnfield, value, defaulthtml, columnproperties, field, rowData) {
 if (field.name == 'HDPRODCENA'){
   if (value != null || value != "")
     defaulthtml.classList.add("nonNull");
 }
 return defaulthtml;
};
</script>

S defaulthtml je možné manipulovat jak je potřeba, jen je nutné brát zřetel na to, že výrazná modifikace může spůsobit nefunkčnost Browse.

techdoc/hiddenparam_cellrenderer.txt · Poslední úprava: 12.03.2026 07:17 autor: jzaboril

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki
DokuWiki Appliance - Powered by TurnKey Linux