FSN#40565 berekeningen in (flex) velden correcter beoordelen op input

svn path=/Website/trunk/; revision=33942
This commit is contained in:
Jos Groot Lipman
2017-05-22 10:06:22 +00:00
parent f381a63240
commit 7c5cd648ff
3 changed files with 25 additions and 30 deletions

View File

@@ -660,6 +660,7 @@ function DeleteOrderLine(row)
function SumChanged(obj)
{
allowInputExpression(obj);
var sum = myParseFloat(obj.value);
var defaultamount = 0;

View File

@@ -684,26 +684,31 @@ $(function () {
}
});
$("input.float,input.number,input.currency").blur(function() {
var val = $(this).val();
if (val.substr(0,1) == '=')
{
try {
val = val.replace(/,/g,"."); // we staan ook komma's toe
var newval = eval(val.substr(1));
if (isFinite(newval))
{
if (val.indexOf(".") > -1 || $(this).hasClass("currency"))
newval = num2currEditable(newval);
$(this).val(newval);
}
// else negeren
}
catch (e) { /* negeren */ }
}
allowInputExpression(this);
});
});
// Als de input met een '=' begint doen we een 'eval' op de rest
function allowInputExpression(thisObj)
{
var val = $(thisObj).val();
if (val.substr(0,1) == '=')
{
try {
val = val.replace(/,/g,"."); // we staan ook komma's toe
var newval = eval(val.substr(1));
if (isFinite(newval))
{
if (val.indexOf(".") > -1 || $(thisObj).hasClass("currency"))
newval = num2currEditable(newval);
$(thisObj).val(newval);
}
// else negeren
}
catch (e) { /* negeren */ }
}
}
// Voorheen num2curr.js
function num2curr(s) {
// debugger;

View File

@@ -106,20 +106,9 @@ function checkKenmerk(field, show, ktype, klen, kdec, kmin, kmax)
}
else if (ktype == 'N')
{
allowInputExpression(field);
value = field.value; // mogelijk gewijzigd
var arrValue = [value];
if (value.length > 0 && value.charAt(0) == "=") // check if it is a calculation
{
if (value == "=" || value.indexOf("@") > 0) // @ voor evt. string manipulatie hierna
valid = false;
else
{
arrValue = value.substring(1).split(/[+\-/*%]/g);
if ($.inArray("", arrValue) != -1)
valid = false;
}
if (!valid)
arrValue = [];
}
for (var i = 0; i < arrValue.length; i++)
{
if (kdec)