Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Amigos,
Estou utilizando uma função javascript, que não é minha. Ela insere, em uma tabela, três campos text, cada vez que um botão é pressionado.
Qualquer função que eu chame para mascarar os campos funciona (como escrito no código abaixo), desde que não sejam passados parâmetros nestas funções. Acontece que tenho que utilizar uma máscara para o campo que recebe valores de moeda e a função que tenho disponível aqui envia valores como parâmetros.
Alguém poderia me ajudar????
Eis a função:
<script language="javascript" type="text/javascript">
function addRowToTable()
{
var tbl = document.getElementById('tblSample');
var lastRow = tbl.rows.length;
// if there's no header row in the table, then iteration = lastRow + 1
var iteration = lastRow;
var row = tbl.insertRow(lastRow);
// left cell
var cellLeft = row.insertCell(0);
var textNode = document.createTextNode(iteration);
cellLeft.appendChild(textNode);
// right cell
var cellRight = row.insertCell(1);
var el = document.createElement('input');
el.setAttribute('type', 'text');
el.setAttribute('name', 'tvalores[]' + iteration);
el.setAttribute('id', 'txtvalores' + iteration);
el.setAttribute('size', '7');//el.onkeypress = keyChkNumbers2;
cellRight.appendChild(el);
var cellRight = row.insertCell(1);
var el = document.createElement('input');
el.setAttribute('type', 'text');
el.setAttribute('name', 'thistorico[]' + iteration);
el.setAttribute('id', 'txthistorico' + iteration);
el.setAttribute('size', '90');
el.onkeypress = keyPressTest;
cellRight.appendChild(el);
var cellRight = row.insertCell(1);
var el = document.createElement('input');
el.setAttribute('type', 'text');
el.setAttribute('name', 'tcod[]' + iteration);
el.setAttribute('id', 'txtcod' + iteration);
el.setAttribute('size', '3');
el.onkeypress = numberOnly;
cellRight.appendChild(el);
}
function keyFormatMoeda(campo,tammax,teclapres,caracter)var tecla = -1;
}var tecla = teclapres.keyCode;
}
if(caracter == null || caracter == "undefined")caracter = ".";
}
vr = campo.value;
if(caracter != "")vr = troca(vr,caracter,"");
}
vr = troca(vr,"/","");
vr = troca(vr,",","");
vr = troca(vr,".","");
tam = vr.length;
if(tecla > 0)tam = vr.length + 1;
}
if(tecla == 8)tam = tam - 1;
}
}
if(tecla == -1 || tecla == 8 || tecla >= 48 && tecla <= 57 || tecla >= 96 && tecla <= 105)campo.value = vr;
}campo.value = vr.substr(0, tam - 2) + ',' + vr.substr(tam - 2, tam);
}campo.value = vr.substr(0, tam - 5) + caracter + vr.substr(tam - 5, 3) + ',' + vr.substr(tam - 2, tam);
}campo.value = vr.substr(0, tam - 8) + caracter + vr.substr(tam - 8, 3) + caracter + vr.substr(tam - 5, 3) + ',' + vr.substr(tam - 2, tam);
}campo.value = vr.substr(0, tam - 11) + caracter + vr.substr(tam - 11, 3) + caracter + vr.substr(tam - 8, 3) + caracter + vr.substr(tam - 5, 3) + ',' + vr.substr(tam - 2, tam);
}campo.value = vr.substr(0, tam - 14) + caracter + vr.substr(tam - 14, 3) + caracter + vr.substr(tam - 11, 3) + caracter + vr.substr(tam - 8, 3) + caracter + vr.substr(tam - 5, 3) + ',' + vr.substr(tam - 2, tam);
}
}
}
function maskKeyPress(objEvent)var iKeyCode;
iKeyCode = objEvent.keyCode;
if(iKeyCode>=48 || iKeyCode<=57) return true;
return false;
}
function numberOnly()if (event.keyCode < 45 || event.keyCode > 57)
event.returnValue = false;
}
function keyChkNumbers2()if (event.keyCode < 45 || event.keyCode > 57 && event.keyCode == 44)
event.returnValue = false;
}
function keyPressTest(e, obj)var validateChkb = document.getElementById('chkValidateOnKeyPress');
if (validateChkb.checked) {
var displayObj = document.getElementById('spanOutput');
var key;
if(window.event) {
key = window.event.keyCode;
}
else if(e.which) {
key = e.which;
}
var objId;
if (obj != null) {
objId = obj.id;objId = this.id;
}
displayObj.innerHTML = objId + ' : ' + String.fromCharCode(key);
}
}
function removeRowFromTable()var tbl = document.getElementById('tblSample');
var lastRow = tbl.rows.length;
if (lastRow > 2)
tbl.deleteRow(lastRow - 1);
}
function openInNewWindow(frm)var aWindow = window.open('', 'TableAddRowNewWindow',
'scrollbars=yes,menubar=yes,resizable=yes,toolbar=no,width=400,height=400');
// set the target to the blank window
frm.target = 'TableAddRowNewWindow';
// submit
frm.submit();
}
</script>
Obrigado
Carregando comentários...