Formatar campos numericos no struts 2

Alguem sabe como colocar uma mascara em um textfield para ele aceitar apenas numeros, no struts 2?

Obrigada!

Também uso o textfield do struts 2 e não encontrei nas tag reference nada sobre formatação.

http://struts.apache.org/2.x/docs/textfield.html

uso javascript onde preciso.

seria ótimo se tivesse algo como o mentawai

http://www.mentaframework.org/inputMask.jsp

de uma olhada como funciona.

Nao tenho experiencia com javascript, voce nao poderia me falar como seria uma funcao em javascript para colocar essa mascara?

isso depende muito do que ve quer, se for um campo para digitar telefone por exemplo, vc pode colocal algo assim na jsp

try { 
   	 DefineMask( document.forms[0].elements['nomedocampo'], "(##) ####-####");
    } catch (e) {  	    
    }

vc pode também fazer a verificação no momento em que o campo está sendo usado.

esta é apenas uma forma de se fazer. existem milhares e melhores, dependendo do que vc precisa



<s:textfield key="nome" onkeypress="return soNumeros()" />


function soNumeros () {

       var key = e.keyCode; // IE
        if (key == 0 ) key = e.which; //Firefox
      
        if( key == 46 || ( key > 47 & key <= 57 )){
                return true;
           }else {                
                return false;
           }         

}


Isso nao deu certo, eu quero um mascara para valor monetario:

olha com ficou o meu .jsp que nao funciona:

	<s:textfield key="componente.LimiteCompra.limiteCredito.faixaDe" name="faixaDe" onkeypress="return soNumeros()" />

	<script type="text/javascript">	
	 try {
		DefineMask( document.forms[0].elements['faixaDe'], "###.###,##");
			} catch (e) {
		 } 
	</script>

Sabe qual o problema?

Desde ja, muitoo obrigada!

bom, basicamente então vc só precisa usar o mask

coloca assim :


<s:textfield key="componente.LimiteCompra.limiteCredito.faixaDe" name="faixaDe"  /> 

<script type="text/javascript">
try {
DefineMask( document.forms[0].elements['faixaDe'], "###.###,##");
} catch (e) {
}


</script>

desta forma funciona.

Nao funcionou!

Coloquei igualzinho voce falou:

<s:textfield key=“componente.LimiteCompra.limiteCredito.faixaDe” name=“faixaDe” />

	<script type="text/javascript">  
	 try {  
		DefineMask( document.forms[0].elements['faixaDe'], "###.###,##");  
		} catch (e) {  
          }     
    </script>

Voce sabe alguma outra maneira, ou algum motivo de nao ter funcionado?

[quote]Alguem sabe como colocar uma mascara em um textfield para ele aceitar apenas numeros, no struts 2?
[/quote] È incrivel mais o tempo passa e eles ainda não conseguiram criar a tag inputMask.

edilson_x tu falou que (Formatar campos numericos no struts 2) entre Mask é FORMATAR é uma grande diferença, por o Mask tu tem duas soluçôes :
-Usar o método de edilson_x e perfeito para você
-WilliamSilva falou que : [quote] È incrivel mais o tempo passa e eles ainda não conseguiram criar a tag inputMask. [/quote] mas tu pode usar validator framework o trabalho fica muito limpo.
e se você quer FORMATAR um campo tu pode usar uma taglib (Format taglib ver. 1.4) http://www.servletsuite.com/servlets/formattag.htm ou você pode até personalizar sua própria taglib.

keep learning

mais informações, voila um Masked input taglib ver. 1.2 http://www.servletsuite.com/servlets/formattag.htm

[quote] mas tu pode usar validator framework o trabalho fica muito limpo.
e se você quer FORMATAR um campo tu pode usar uma taglib (Format taglib ver. 1.4) http://www.servletsuite.com/servlets/formattag.htm ou você pode até personalizar sua própria taglib. [/quote]Legal isso eu sei, mais o que o disse foi que :[quote] È incrivel mais o tempo passa e eles ainda não conseguiram criar a tag inputMask. [/quote] Alias em um projeto qual a vantagem de vc. ficar entupindo a sua aplicação de libs = Ajax, JavaScript ,e outros Jars. para resolver uma simples formatação de mascara num textfield que o teu framework não suporta. Qual a praticidade disso.???
sds.

[quote] Alias em um projeto qual a vantagem de vc. ficar entupindo a sua aplicação de libs = Ajax, JavaScript ,e outros Jars. para resolver uma simples formatação de mascara num textfield que o teu framework não suporta. Qual a praticidade disso.???
sds.[/quote]

concordo com você William, mas o framework ou IDE é um anel que não cabe nos dedos de tudo mundo, por isso tem as ferramentas de personalizar e criar suas próprias taglib e usa-la para semprer (Ajustando o anel ) :roll:
nunca fique nas mãos das empresas que oferecem os frameworks, tem que ser flexível para personalizar o seu.

um abraço Willian