testes com mascaras em campos
mask, input, currency
by RASG
HTML
<script src="http://cloud.github.com/downloads/digitalBush/jquery.maskedinput/jquery.maskedinput-1.3.min.js"></script>
<div id="datapanel">
<input type="text" class="moneyyy" id="input1" value="" />
<input type="text" class="moneyyy" id="input2" value="0" />
<input type="text" class="moneyyy" id="input3" value="1" />
<input type="text" class="moneyyy" id="input4" value="10" />
<input type="text" class="moneyyy" id="input5" value="100" />
<input type="text" class="moneyyy" id="input6" value="1000" />
<input type="text" class="moneyyy" id="input7" value="10000" />
<input type="text" class="moneyyy" id="input8" value="100000" />
<input type="text" class="moneyyy" id="input9" value="1000000" />
<input type="text" class="moneyyy" id="input0" value="10000000" />
</div>
<br>
<div id="outputpanel"></div>
CSS
body {
margin: 0.5em;
}
#datapanel {
background-color: whitesmoke;
border: 1px dotted lightblue;
height: 30%;
padding: 2px;
text-align:center;
}
input {
width: 6em;
}
#outputpanel {
border: 1px solid red;
font-family: monospace;
height: 60%;
overflow-x:hidden;
overflow-y:auto;
padding: 0.5em;
}
JavaScript
scanforelems('.moneyyy')
$('.moneyyy').on('keyup', function(e) {
myid = $(this).attr('id')
myvalue = $(this).val()
showvaluetouser(myid, myvalue)
})
function showvaluetouser(newelemclass, texttoadd) {
var elemtowrite = $('#outputpanel')
var objnewelemclass = '.' + newelemclass
if (elemtowrite.children(objnewelemclass).length == false) {
elemtowrite.append('<div class="' + newelemclass + '"></div>')
}
$(objnewelemclass).html(newelemclass + ': ' + formated(texttoadd))
}
function scanforelems(elemtoscan) {
var elemtowrite = $('#outputpanel')
$(elemtoscan).each(function() {
elemtowrite.append('<div class="' + this.id + '">' + this.id + ': ' + formated(this.value) + '</div>')
})
}
function formated(nStr) {
curr = '$';
nStr += '';
x = nStr.split('.');
x1 = x[0];
x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
if (x1 + x2) {
return curr + x1 + x2
}
else {
return ''
}
}