Olá desenvolvedores, ainda no contexto do JSF – JavaServer Faces falaremos sobre o DHTML – Dynamic Hyper Text Markup Language, também conhecido como Dynamic HTML. O DTHML, cuja linguagem padrão é o Javascript é uma poderosa ferramenta para a criação de soluções para sistemas web e/ou páginas web dinâmicas.

Com essa combinação do HTML, Javascript e CSS que deu origem ao Dynamic HTML, é possível que, além da implementação de soluções criativas, possamos construir páginas e/ou sistemas mais atrativos para os usuários. O Objetivo é que aplicações web possam ser, por meio de eventos, dinamicamente modificadas na máquina do cliente, não precisando de novos acessos ao servidor para este fim.

Ao final da renderização, o framework JSF que é uma especificação para a construção de interfaces de usuário orientadas a componentes, transforma todo o código JSF em HTML.

ENTENDENDO DHTML NA PRÁTICA

Considere o exemplo simples, onde temos um campo de entrada – “inpuText” e um botão – “commandButton”, que dispara um evento Javascript. Ao clicarmos no botão o evento é disparado. Este evento é uma função Javascript que modifica o que foi inserido na entrada por um texto pré-determinado.

Especificamente no caso do botão de comando o evento responsável por chamar a função é o evento “onclick”.  O “onclick” é um evento que ocorre quando em algum elemento é clicado. Assim, do mesmo modo que o “commandButton” o campo de entrada “inputText” também pode receber eventos.

Então podemos criar também para o campo de entrada um evento do tipo “onclick”. Assim, utilizamos a palavra-chave “this”, que também pode ser chamada de método de objeto para referenciar o elemento que receberá o evento.

Ao clicar no botão chamaremos a função “alterarValorDocampo()”. E ao clicarmos no campo de texto, o valor que estiver no campo será trocado pelo valor definido “troquei o valor”.

EM POUCAS PALAVRAS

O DHTML é um recurso muito comum e utilizando principalmente para implementar eventos de texto, por meio do click ou apenas passando o mouse sobre algum elemento. São inúmeros eventos e você, um desenvolvedor web deve estudá-los e conhecer ainda que somente os principais.