Olá pessoal,
tenho um número que vem do banco de dados com esse valor: 1.234567899E9
com ajax ele mostra na tela o valor 1.234567899E9 e sem ajax mostra o valor correto que é: 1.234.567.899,00
Alguém pode dar alguma dica?
Vlw
Olá pessoal,
tenho um número que vem do banco de dados com esse valor: 1.234567899E9
com ajax ele mostra na tela o valor 1.234567899E9 e sem ajax mostra o valor correto que é: 1.234.567.899,00
Alguém pode dar alguma dica?
Vlw
Epa, isso mostra que o número está em notação científica!
Vc tá usando que Framework Ajax?
Dá para vc dar uma adaptada com JS, algo + ou - do tipo:
[code]
<script LANGUAGE=“JavaScript”>
function FormataReais(fld, milSep, decSep, e) {
var sep = 0;
var key = ‘’;
var i = j = 0;
var len = len2 = 0;
var strCheck = ‘0123456789’;
var aux = aux2 = ‘’;
var whichCode = (window.Event) ? e.which : e.keyCode;
if (whichCode == 13) return true;
key = String.fromCharCode(whichCode);// Valor para o código da Chave
if (strCheck.indexOf(key) == -1) return false; // Chave inválida
len = fld.value.length;
for(i = 0; i < len; i++)
if ((fld.value.charAt(i) != ‘0’) && (fld.value.charAt(i) != decSep)) break;
aux = ‘’;
for(; i < len; i++)
if (strCheck.indexOf(fld.value.charAt(i))!=-1) aux += fld.value.charAt(i);
aux += key;
len = aux.length;
if (len == 0) fld.value = ‘’;
if (len == 1) fld.value = ‘0’+ decSep + ‘0’ + aux;
if (len == 2) fld.value = ‘0’+ decSep + aux;
if (len > 2) {
aux2 = ‘’;
for (j = 0, i = len - 3; i >= 0; i–) {
if (j == 3) {
aux2 += milSep;
j = 0;
}
aux2 += aux.charAt(i);
j++;
}
fld.value = ‘’;
len2 = aux2.length;
for (i = len2 - 1; i >= 0; i–)
fld.value += aux2.charAt(i);
fld.value += decSep + aux.substr(len - 2, len);
}
return false;
}
</script>[/code]
e chamar no seu form:
<input type=text name=valor length=15 onKeyPress=“return(FormataReais(this,’.’,’,’,event))”>//exemplo para a entrada
EDIT: Perái, já vem do banco com esse valor: 1.234567899E9 e vc já tá editando com JS???Aí o problema é do FW Ajax q vc tá usando, melhor dizer para nós qual é?
Estou usando o DWR e o campo vem assim do banco, acho que está como decimal ou algo do tipo…
Acho que o problema é que quando utilizo o ajax não éfeita a conversão pelo commonsBeanUtils, pois estou usando struts.
tentei utilizar o ConvertUtils.convert para converter antes de enviar o response mas não funcionou também.