Histórico da Página
Índice
Índice | ||||||||
---|---|---|---|---|---|---|---|---|
|
Plataforma
Produto: fluig
Ocorrência
Meus widgets estão todos com as mesmas preferências, como resolvo?
Causa
Geralmente isso ocorre quando há mais de um elemento com o mesmo "id" na página. O risco de isso ocorrer é maior quando, montando uma pagina, use-se mais de uma instância de um widget que não esteja com os "ids" de seus elementos nomeados corretamente.
Solução
Dentro dos arquivos .ftl, sempre que é criado um novo elemento, é importante utilizar a variável instanceId como sufixo na hora de nomeá-lo. Abaixo um exemplo:
Bloco de código | ||
---|---|---|
| ||
<div id="TesteQualidade_${instanceId}"> <form role="form"> <div id="formForm_${instanceId}"> <div class="form-group"> <label for="qualiTitle_${instanceId}">...</label> <input type="text" class="form-control" id="qualiTitle_${instanceId}" value="${qualiTitleDataField!}"/> </div> </div> </form> </div> |
Onde:
Elemento | Descrição |
---|---|
${instanceId} | Quando utilizada a técnica de super widget, essa variável contém o "id" único da instância em questão. |
Usar instanceId como sufixo é bastante produtivo quando é necessário fazer referência a outros objetos dentro do próprio .ftl, pois quando foi inserida a label para o input, bastou usar como referência o identificador único do objeto em questão. Ou seja, quando o input field foi criado, deu-se um "id" único para ele.
...
Bloco de código | ||
---|---|---|
| ||
var titulo = $("#qualiTitle_" + this.instanceId).val(); |
Onde:
Elemento | Descrição |
---|---|
$(...) | Função que inicia a buscar por algum elemento na tela. |
# | É o prefixo que indica, para o javascript, que se deseja buscar um elemento cuja propriedade "id" seja igual aos caracteres que se seguem a ele. |
this.instanceId | Quando utilizada a técnica de super widget, essa variável contém o id único da instância em questão. |
...