| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/02/2010 14:00:17
|
mrbbm
JavaChild
Membro desde: 16/12/2009 14:49:58
Mensagens: 125
Offline
|
Como fazer a contagem de caracteres (e informar ao usuário) de um rich:editor ao editá-lo?
Lembrando que este campo não permite a propriedade onkeyup!
Com uma textarea comum, objeto renderizado pelo rich:editor, bastava lançar uma função javascript no onkeyup fazendo a contagem de caracteres até o momento.
E agora?
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/02/2010 14:08:47
|
natureza
JavaTeenager
![[Avatar]](/images/avatar/af3c0ef813875104c4222e0670bae909.jpg)
Membro desde: 07/05/2009 16:21:29
Mensagens: 198
Localização: Rio de Janeiro - RJ
Offline
|
Bom acho que se tu quer usar com onkeyup terá que usar o jQuery.
Mas na realidade ficará meio furado esta contagem.
Porque o usuário pode estar clicando em delete ou backspace e estará contando como digitação.
Ai tu terá que validar as teclas também.
Se eu pensar em algo aqui te posto em seguida.
|
----------------------------------------
Tiago Carpanese
Rio de Janeiro - RJ
www.actionit.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/02/2010 14:23:16
|
mrbbm
JavaChild
Membro desde: 16/12/2009 14:49:58
Mensagens: 125
Offline
|
Não não, acho que não expliquei direito.
Eu quero contar o número de caracteres ali dentro da caixa de texto!
Isto porque o campo no banco vai ter um limite de 500 caracteres, por exemplo.
Neste caso ele vai digitar a mensagem e será exibido quantos caracteres ele já utilizou.
Estou ciente de que quando ele utilizar negrito, italico, etc, ele estará perdendo caracteres, já que a tag html irá para o banco.
É um formulário simples onde o usuário irá postar sua mensagem, mas podendo utilizar recursos simples do html, por isso estou utilizando o rich:editor ao invés de um textarea.
Quando o usuário posta a mensagem maior do que o limite então eu já retorno uma facesmessages, porém o usuário fica meio no escuro sem saber quantos caracteres ele deve apagar. Por isso quero exibir o número de caracteres utilizados até aquele momento.
Grato!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/02/2010 14:27:19
|
mrbbm
JavaChild
Membro desde: 16/12/2009 14:49:58
Mensagens: 125
Offline
|
Anteriormente estava utilizando assim:
<textarea onkeyup="this.value = this.value.substring(0, 500);" ....
Quando o usuário atingia o limite, automaticamente o texto que ultrapassava era excluído.
Depois resolvi melhorar e fiz a chamada de uma funcao que exibia em tempo de execução o número de caracteres digitados, obtendo através do onkeyup do textarea o value.length do campo via javascript e mandando para uma div ou input edit, informando ao usuário ali na própria edição.
Veja que em ambas as situações eu utilizava a propriedade onkeyup do textarea. Que é quando o usuário está digitando.
Agora me deparo com o rich:editor que não permite esta propriedade.
E agora?
This message was edited 1 time. Last update was at 04/02/2010 14:30:59
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/02/2010 14:51:24
|
natureza
JavaTeenager
![[Avatar]](/images/avatar/af3c0ef813875104c4222e0670bae909.jpg)
Membro desde: 07/05/2009 16:21:29
Mensagens: 198
Localização: Rio de Janeiro - RJ
Offline
|
Entãoooo...
Pera ai huahuahuauha... Acho que isto da certo.
Faz assim... usa o rich:editor ai tu coloca o id dele de por exemplo texto. Ai usa jQuery assim:
Anexei o jquery-1.4.min.js
Abraço e me diz se deu certo !
| Nome do arquivo |
jquery-1.4.min.js |
Download
|
| Descrição |
|
| Tamanho |
68 Kbytes
|
| Baixado: |
83 vez(es) |
|
----------------------------------------
Tiago Carpanese
Rio de Janeiro - RJ
www.actionit.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/02/2010 19:00:20
|
mrbbm
JavaChild
Membro desde: 16/12/2009 14:49:58
Mensagens: 125
Offline
|
Será que tem outra saída além desta, tendo que adicionar plugin à aplicação?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/02/2010 22:39:42
|
natureza
JavaTeenager
![[Avatar]](/images/avatar/af3c0ef813875104c4222e0670bae909.jpg)
Membro desde: 07/05/2009 16:21:29
Mensagens: 198
Localização: Rio de Janeiro - RJ
Offline
|
JQuery é algo hoje que é utilizado em tudo.
Melhora os códigos tals.
O RichFaces ja incorpora jQuery.
Acho que vale a pena. Testa ai e me fala o resultado !
Abraço
|
----------------------------------------
Tiago Carpanese
Rio de Janeiro - RJ
www.actionit.com.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 05/02/2010 13:43:47
|
mrbbm
JavaChild
Membro desde: 16/12/2009 14:49:58
Mensagens: 125
Offline
|
Então, é isso mesmo, o RichFaces já incorpora o jQuery. Só não sei a versão e nem os plugins.
Sei que o <rich:editor é tinyMCE.
Bom, ao chamar o arquivo que você anexou e abrir a página é exibido o erro:
---
Detalhes dos erros da página da Web
Agente de Usuário: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; .NET CLR 3.5.30729; .NET CLR 3.0.3061
Carimbo de data/hora: Fri, 5 Feb 2010 15:54:03 UTC
Mensagem: O objeto não dá suporte para a propriedade ou método
Linha: 265
Caractere: 107
Código: 0
URI: http://localhost:8080/nomedosistema/a4j/g/3_3_1.GAorg.ajax4jsf.javascript.PrototypeScript.jsf
---
E o onkeyup não funciona.
Eu tentei também um document.getElementById("idDoRichEditor"); para exibir o conteúdo e nada, nem chamou.
O RichFaces pode ter tirado o evento onkeyup justamente por saber que daria conflito com o TinyMCE. Não seria a toa a indisponibilidade desta função.
Enfim, agora não sei o que fazer...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 08/02/2010 10:54:40
|
mrbbm
JavaChild
Membro desde: 16/12/2009 14:49:58
Mensagens: 125
Offline
|
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 13/08/2010 13:25:31
|
sammers21
JavaBaby
![[Avatar]](/images/avatar/65448ceadc9d24cfb20915c0a610a4ef.jpg)
Membro desde: 12/08/2008 07:12:03
Mensagens: 85
Offline
|
Cara esse erro aconteceu comigo!!!
o possivel problema é que você esta importando o jquery por meio de tag html <script src="caminho do jquey"></script>
como richfaces incorpara o o jquery não percisa declara-lo como foi feito em codigo
<script type="text/javascript" src="jquery-1.4.min.js"></script>
apenas apague então esta linha e seja feliz....
|
|
|
 |
|
|