Ir para conteúdo
Fórum Script Brasil
  • 0

Javascript - Gridview


Renyo

Pergunta

Olá...

bem..tenho um script

<html>

<head>
<title>Formatação de Valores monetarios</title>
</head>

<body>
<script>
function Limpar(valor, validos) {
// retira caracteres invalidos da string
var result = "";
var aux;
for (var i=0; i < valor.length; i++) {
aux = validos.indexOf(valor.substring(i, i+1));
if (aux>=0) {
result += aux;
}
}
return result;
}

//Formata número tipo moeda usando o evento onKeyDown

function Formata(campo,tammax,teclapres,decimal) {
var tecla = teclapres.keyCode;
vr = Limpar(campo.value,"0123456789");
tam = vr.length;
dec=decimal

if (tam < tammax && tecla != 8){ tam = vr.length + 1; }

if (tecla == 8 )
{ tam = tam - 1; }

if ( tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105 )
{

if ( tam <= dec )
{ campo.value = vr; }

if ( (tam > dec) && (tam <= 5) ){
campo.value = vr.substr( 0, tam - 2 ) + "," + vr.substr( tam - dec, tam ); }
if ( (tam >= 6) && (tam <= 8) ){
campo.value = vr.substr( 0, tam - 5 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ); 
}
if ( (tam >= 9) && (tam <= 11) ){
campo.value = vr.substr( 0, tam - 8 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ); }
if ( (tam >= 12) && (tam <= 14) ){
campo.value = vr.substr( 0, tam - 11 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - dec, tam ); }
if ( (tam >= 15) && (tam <= 17) ){
campo.value = vr.substr( 0, tam - 14 ) + "." + vr.substr( tam - 14, 3 ) + "." + vr.substr( tam - 11, 3 ) + "." + vr.substr( tam - 8, 3 ) + "." + vr.substr( tam - 5, 3 ) + "," + vr.substr( tam - 2, tam );}
} 

}

</script>
<input type="text" name="T1" size="20" onKeydown="Formata(this,20,event,2)"></p>
</p>
</body>

</html>

ELE FAZ UM SEGUINTE.. ele formata as casas decimais enquanto eu digito...(se quiser pode fazer teste)...

eu quero pegar esse script e fazer ele funcionar nos Textbox do meu GridView em momento de edição...

sacaram da parada?

Brigado aí !!! ;)

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Eu acho que respondi no outro fórum, mas você não falou se funcionou ou não.

No evento: RowEditing

Dim txtVlUnitario As TextBox = gv.Rows(e.NewEditIndex).Cells(6).Controls(0)

txtVlUnitario.Attributes.Add("onKeyPress", "return(MascaraMoeda(this,'.',',',event))")

Neste caso este JavaScript é mascara de moeda, mas qualquer outro JavaScript de mascara deve funcionar.

Link para o comentário
Compartilhar em outros sites

  • 0

que estranho... o meu é em C#

fiz assim...

TextBox txtVlrAtual = GridObjEspc.Rows[e.NewEditIndex].Cells[3].Controls[0];

txtVlrAtual.Attributes.Add("onKeyPress","Formata(this,20,event,2)");

e ele emite o erro

CS0266: Cannot implicitly convert type 'System.Web.UI.Control' to 'System.Web.UI.WebControls.TextBox'. An explicit conversion exists (are you missing a cast?)

bem eu sei o que significa o erro e tal.. mas pra mim deveria funcionar...sendo que provavelmente aí deu certo né...

o que ta de errado ?

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...