This page (revision-8) was last changed on 04-Sep-2019 06:58 by Dieter Käppel

This page was created on 14-Sep-2016 14:10 by Dieter Käppel

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Page revision history

Version Date Modified Size Author Changes ... Change note
8 04-Sep-2019 06:58 9 KB Dieter Käppel to previous
7 04-Sep-2019 06:58 8 KB Dieter Käppel to previous | to last
6 15-Sep-2016 19:47 8 KB Dieter Käppel to previous | to last
5 14-Sep-2016 14:39 8 KB Dieter Käppel to previous | to last
4 14-Sep-2016 14:37 7 KB Dieter Käppel to previous | to last
3 14-Sep-2016 14:30 6 KB Dieter Käppel to previous | to last
2 14-Sep-2016 14:25 5 KB Dieter Käppel to previous | to last
1 14-Sep-2016 14:10 2 KB Dieter Käppel to last

Page References

Incoming links Outgoing links

Version management

Difference between version and

At line 61 added 30 lines
!!Autocomplete Tag
Der Autocomplete-Tag <j:autocomplete> ist dem Primefaces-Tag <p:autocomplete> nachempfunden und verwendet dieselben Styles, sodass er sich optisch nicht unterscheidet. Das Laden der Complete-Liste erfolgt allerdings über JQuery-AJAX:
{{{
<j:autocomplete id="autocomplete" complete="#{jqueryController.complete}">
<p:inputText id="input" value="#{jqueryController.value}" autocomplete="off"/>
</j:autocomplete>
}}}
Bei der Implementierung wurde bewusst darauf verzichtet, den kompletten Input-Text-Tag ebenfalls zu implementieren, da es dafür bereits umfangreiche Tags gibt. Er wird daher als Child-Element eingefügt, wie im Beispiel zu sehen ist.
Der Tag <j:autocomplete> unterstützt den Parameter "cellRenderer", mit dem eine Javascript-Function übergeben werden kann, um das standardmäßige Cell-Rendering zu ersetzen. Hier eine Beispiel, wie die Option eingesetzt werden kann:
{{{
<j:function name="cellRenderer" arguments="$row, key, value">
if (key == "styleClass") {
$row.addClass(value);
} else {
var $cell = $("<td/>");
$cell.attr("title", value);
$cell.html(value);
if (key == "label") {
$cell.css("background-color", "black");
$cell.css("color", "yellow");
}
$row.append($cell);
}
</j:function>
}}}