Spesso in form molto lunghi, quando si scrolla per la compilazione, l'utilizzo di Ajax può essere fastidioso perchè ad ogni esecuzione del codice poi sul client ci si riposiziona in alto e si perde lo scroll.
In javascript questo problema si risolve utilizzando la seguente sintassi:
Dalla versione 3.2 di Primefaces è stato introdotto il metodo
RequestContext.getCurrentInstance().scrollTo
Purtroppo però non mi funzionava (stavo utilizzando la versione 3.5).
Comunque un workaround funzionante è quello di utilizzare sempre l'oggetto org.primefaces.context.RequestContext, inserendo il javascript dentro in questo modo:
Si noti che l'id deve essere quello generato dal componente a video, per capirci quello che vediamo col viewsource della pagina.
In javascript questo problema si risolve utilizzando la seguente sintassi:
document.getElementById("idComponente").scrollIntoView();
Dalla versione 3.2 di Primefaces è stato introdotto il metodo
RequestContext.getCurrentInstance().scrollTo
Purtroppo però non mi funzionava (stavo utilizzando la versione 3.5).
Comunque un workaround funzionante è quello di utilizzare sempre l'oggetto org.primefaces.context.RequestContext, inserendo il javascript dentro in questo modo:
RequestContext.getCurrentInstance().execute("document.getElementById( 'componentId' ).scrollIntoView();");
Si noti che l'id deve essere quello generato dal componente a video, per capirci quello che vediamo col viewsource della pagina.
Nessun commento:
Posta un commento