function Add_Comma(number) {
var index;
var rigthStr = '';
var tmp = '';
number = '' + number;
if(number.indexOf(',')>=0 || number.indexOf('-')>=0)
return number;
index = number.indexOf('.');
if(index>0) {
tmp = number;
number = tmp.substring(0,index);
rigthStr = tmp.substring(index);
}
if (number.length > 3) {
var mod = number.length%3 ;
var output = (mod > 0 ? (number.substring(0,mod)) : '');
for (i=0 ; i < Math.floor(number.length/3) ; i++) {
if ((mod ==0) && (i ==0))
output+= number.substring(mod+3*i,mod+3*i+3);
else
output+= ',' + number.substring(mod+3*i,mod+3*i+3);
}
return (output+rigthStr);
}
else return number+rigthStr;
}
function Del_Comma(value)
{
if(value.indexOf(',')>=0)
value = replace(value,',','');
if(value.indexOf('.00')>=0)
value = replace(value,'.00','');
return value;
}
function checkNum(obj,field){
var n =/^/d+(/./d+)?$/ ;
if(obj.value!=''){
if(n.test(obj.value)){
return true;
}else{
//jsMsg = err1MonthlyIncome;
var mesg=err1;
var temp = new Array(field);
var jsMsg = concatMsg(mesg,temp);
alert(jsMsg);
obj.focus();
obj.value="";
return false;
}
}
}
function digitOnly()
{
e = window.event;
if (e.keyCode == 46) {
if(e.srcElement.value.indexOf(".") >= 0)
e.keyCode = 0;
}
else if (e.keyCode < 48 || e.keyCode > 57) {
e.keyCode = 0;
}
}
function checkLengthModPrem(obj,field,point){
var num = parseFloat(obj.value)+"";
var pointNum = num.indexOf('.');
if(pointNum>0){
var num1 = num.substring(0,pointNum);
var num2 = num.substring(pointNum+1,num.length);
if(num1.length>10||num2.length>point){
if(num2.length>point){
var mesg=err2;
var temp = new Array('2');
var jsMsg = concatMsg(mesg,temp);
var temp1 = new Array('9,999,999.99');
jsMsg = concatMsg(jsMsg,temp1);
alert(jsMsg);
num2 = num2.substring(0,point);
obj.value=num1+"."+num2;
addFormatPoint(obj,point);
obj.focus();
}
if(num1.length>7){
var mesg=err3;
var temp = new Array(field,'9,999,999.99');
var jsMsg = concatMsg(mesg,temp);
alert(jsMsg);
obj.focus();
obj.value="";
return false;
}
}
}else{
if(num.length>7){
var mesg=err3;
var temp = new Array(field,'9,999,999.99');
var jsMsg = concatMsg(mesg,temp);
alert(jsMsg);
obj.focus();
obj.value="";
return false;
}
}
return true;
}
function addFormatPoint(obj,point){
if(obj.value != ""){
value = uncommafy(obj.value);
var num = parseFloat(value)+"";
var pointNum = num.indexOf('.');
if(pointNum>0){
var num1 = num.substring(0,pointNum);
var num2 = num.substring(pointNum+1,num.length);
num = commafy(num1)+'.'+num2;
for(i=num2.length;i<point;i++){
num=num+"0";
}
obj.value=num;
}else{
num = commafy(num);
if(point>0){
num = num+".";
for(i=0;i<point;i++){
num=num+"0";
}
}
obj.value=num;
}
}
}
//Replace [i] in jsMsg by inParam
function concatMsg(jsMsg, inParam){
for(idx_i=0;idx_i<inParam.length;idx_i++){
var idx = jsMsg.indexOf('['+idx_i+']');
if (idx!=-1)
jsMsg = jsMsg.substring(0,idx) + inParam[idx_i] + jsMsg.substring(idx+3);
}
return jsMsg;
}
<html:text property="payOut_income_amount" styleId="payOut_income_amount"
style="text-align: Right" styleClass="textfield" style="text-align: Right" size="10" maxlength="10"
onfocus="this.value=Del_Comma(this.value);" onchange="checkNum(this,msgPayAmount);checkLengthModPrem(this,msgPayAmount,'2');"
onblur="this.value=Add_Comma(this.value);">
</html:text>