P
Perttu Pulkkinen
I have different functions that receive window.event as parameter. Functions
are used like this:
<input type="text" id="x"
onkeypress="return onKeyCurrencyCheck(ev, 'x')"
onblur ="onBlurCurrencyCheck(event, 'x')"">
Works very well with IE, but window.event and maybe window.event.keycode too
seems to be missing form firefox. Is there a workaround for this?
Perttu Pulkkinen
function toCurrency(val)
{
if(val <0)
{ euros = Math.ceil(val); cents = Math.abs(Math.ceil(val*100) -
euros*100); }
else
{ euros = Math.floor(val); cents = Math.floor(val*100) - euros*100; }
if(cents <10) cents = "0" + cents;
return euros +"." + cents;
}
/**********************************************************/
function onKeyCurrencyCheck(ev, eleid)
{
ret = false;
ele = getElement(eleid);
if((48 <= ev.keyCode) && (ev.keyCode <= 57)) { ret = true;}
else if(ev.keyCode == 8 || ev.keyCode == 46 ) {ret = true;}
else if(ev.keyCode == 44) { ev.keyCode = 46; ret =
true;}
else if(ev.keyCode == 13) //enter
{
parsedvalue = parseFloat(ele.value);
if(isNaN(parsedvalue) == false)
{ ele.value = toCurrency(parsedvalue); }
else
{ ele.value ="0.00";}
}
return ret;
}
/**********************************************************/
function onBlurCurrencyCheck(ev, eleid)
{
ele = getElement(eleid);
parsedvalue = parseFloat(ele.value);
if(isNaN(parsedvalue) == false)
{ ele.value = toCurrency(parsedvalue); }
else
{ ele.value ="0.00"; }
}
are used like this:
<input type="text" id="x"
onkeypress="return onKeyCurrencyCheck(ev, 'x')"
onblur ="onBlurCurrencyCheck(event, 'x')"">
Works very well with IE, but window.event and maybe window.event.keycode too
seems to be missing form firefox. Is there a workaround for this?
Perttu Pulkkinen
function toCurrency(val)
{
if(val <0)
{ euros = Math.ceil(val); cents = Math.abs(Math.ceil(val*100) -
euros*100); }
else
{ euros = Math.floor(val); cents = Math.floor(val*100) - euros*100; }
if(cents <10) cents = "0" + cents;
return euros +"." + cents;
}
/**********************************************************/
function onKeyCurrencyCheck(ev, eleid)
{
ret = false;
ele = getElement(eleid);
if((48 <= ev.keyCode) && (ev.keyCode <= 57)) { ret = true;}
else if(ev.keyCode == 8 || ev.keyCode == 46 ) {ret = true;}
else if(ev.keyCode == 44) { ev.keyCode = 46; ret =
true;}
else if(ev.keyCode == 13) //enter
{
parsedvalue = parseFloat(ele.value);
if(isNaN(parsedvalue) == false)
{ ele.value = toCurrency(parsedvalue); }
else
{ ele.value ="0.00";}
}
return ret;
}
/**********************************************************/
function onBlurCurrencyCheck(ev, eleid)
{
ele = getElement(eleid);
parsedvalue = parseFloat(ele.value);
if(isNaN(parsedvalue) == false)
{ ele.value = toCurrency(parsedvalue); }
else
{ ele.value ="0.00"; }
}