JS engolindo zeros

2 respostas
K

olá,
eu estou com um pequeno problema e acho q é JS, estou trabalhando com struts e jsp, qdo eu passo por uma pagina jsp e chamo um action, a mesma joga um valor cnpj na sessão.
Quando há necessiadade d voltar para esta página e o cnpj estiver na sessão como diferente d nulo, eu tenho q coloca-lo no input que é do tipo txt. Para fazer isso estou usando javascript, mas ae que tá o problema, qdo o seguinte código é atingido, é retirado os zeros do valor, tanto os da direita como os da esquerda, apartir do script.

<% if ( session.getAttribute("cnpj") != null ) {
//aqui o valor aparece normal no console do eclipse 
     System.out.println("o valor do cnpj é :" + session.getAttribute("cnpj"));%>

<!--o problema tá aqui -->
      <script>
        var valor = <%=session.getAttribute("cnpj")%>; 
	   alert ("o valor é " + valor );
       document.forms[0].cnpj.value = <%=session.getAttribute("cnpj")%>;      
       </script>
<!--até aqui -->

<%//aqui o valor aparece normal no console do eclipse
        System.out.println("o valor do cnpj é :" + session.getAttribute("cnpj"));
 } %>

alguém sab me responder o pq :?:

2 Respostas

gomesrod

Olá,

Me parece que o script está sendo montado de forma que o cnpj acabe virando número:

var valor = <%=session.getAttribute("cnpj")%>;

Isso faz com que na página fique assim:

var valor = 0052443223524 (exemplo)

Ou seja, foi atribuído um número para a variavel “valor” e quando você usar o valor ele aparece sem os zeros.

Tente mudar para:

var valor = '<%=session.getAttribute("cnpj")%>'; //Repare nas aspas
K

Obrigada gomesrod, valeu pela dica.
funcionou certinho.
:smiley:

Criado 22 de agosto de 2008
Ultima resposta 22 de ago. de 2008
Respostas 2
Participantes 2