BUG 9438 Don't add ceros the mask in the fields SOLVED
- I add code for add ceros in the fields
This commit is contained in:
@@ -334,6 +334,7 @@ function G_Text( form, element, name)
|
||||
this.mType = 'text';
|
||||
this.parent = G_Field;
|
||||
this.browser = {};
|
||||
this.comma_separator = ".";
|
||||
|
||||
this.checkBrowser = function(){
|
||||
var nVer = navigator.appVersion;
|
||||
@@ -1044,6 +1045,7 @@ function G_Text( form, element, name)
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
switch(action){
|
||||
case 'mask': case 'move':
|
||||
dataNewMask = me.replaceMasks(newValue, newCursor);
|
||||
@@ -1232,19 +1234,6 @@ function G_Text( form, element, name)
|
||||
patron = /[0-9,\.]/;
|
||||
}
|
||||
|
||||
if (me.mType == 'text') {
|
||||
me.comma_separator = '';
|
||||
patron = /[0-9\-]/;
|
||||
txtRealMask = me.mask.split('');
|
||||
p = txtRealMask.length - 1;
|
||||
for ( ; p >= 0; p--) {
|
||||
if (txtRealMask[p] != '#' && txtRealMask[p] != '%' && txtRealMask[p] != ' ') {
|
||||
me.comma_separator = txtRealMask[p];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
key = String.fromCharCode(pressKey);
|
||||
keyValid = patron.test(key);
|
||||
keyValid = keyValid || (pressKey == 45);
|
||||
@@ -1352,55 +1341,58 @@ function G_Text( form, element, name)
|
||||
}
|
||||
}
|
||||
|
||||
var countDecimal = 0;
|
||||
txtRealMask = me.mask.split('');
|
||||
p = txtRealMask.length - 1;
|
||||
for ( ; p >= 0; p--) {
|
||||
if (txtRealMask[p] == '#') {
|
||||
countDecimal++;
|
||||
}
|
||||
if (txtRealMask[p] == separatorField) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
var decimalString = '';
|
||||
var pluginDecimal = '';
|
||||
var numberSet = me.element.value.split(separatorField);
|
||||
|
||||
if (typeof(numberSet[1]) == 'undefined') {
|
||||
var decimalSet = '';
|
||||
var newInt = '';
|
||||
var newPluginDecimal = '';
|
||||
var decimalCade = numberSet[0].split('');
|
||||
for (p = 0; p < decimalCade.length; p++) {
|
||||
if (!isNaN(parseFloat(decimalCade[p])) && isFinite(decimalCade[p])) {
|
||||
newInt += decimalCade[p];
|
||||
} else {
|
||||
newPluginDecimal += decimalCade[p];
|
||||
var partsMaskSep = me.mask.split(separatorField);
|
||||
if (partsMaskSep.length == 2) {
|
||||
var countDecimal = 0;
|
||||
txtRealMask = me.mask.split('');
|
||||
p = txtRealMask.length - 1;
|
||||
for ( ; p >= 0; p--) {
|
||||
if (txtRealMask[p] == '#') {
|
||||
countDecimal++;
|
||||
}
|
||||
if (txtRealMask[p] == separatorField) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
numberSet[0] = newInt;
|
||||
numberSet[1] = newPluginDecimal;
|
||||
}
|
||||
|
||||
var decimalSet = numberSet[1];
|
||||
var decimalCade = decimalSet.split('');
|
||||
var countDecimalNow = 0;
|
||||
for (p = 0; p < decimalCade.length; p++) {
|
||||
if (!isNaN(parseFloat(decimalCade[p])) && isFinite(decimalCade[p])) {
|
||||
countDecimalNow++;
|
||||
decimalString += decimalCade[p];
|
||||
} else {
|
||||
pluginDecimal += decimalCade[p];
|
||||
}
|
||||
}
|
||||
var decimalString = '';
|
||||
var pluginDecimal = '';
|
||||
var numberSet = me.element.value.split(separatorField);
|
||||
|
||||
if(countDecimalNow < countDecimal) {
|
||||
for(; countDecimalNow < countDecimal; countDecimalNow++) {
|
||||
decimalString += '0';
|
||||
if (typeof(numberSet[1]) == 'undefined') {
|
||||
var decimalSet = '';
|
||||
var newInt = '';
|
||||
var newPluginDecimal = '';
|
||||
var decimalCade = numberSet[0].split('');
|
||||
for (p = 0; p < decimalCade.length; p++) {
|
||||
if ((!isNaN(parseFloat(decimalCade[p])) && isFinite(decimalCade[p])) || (decimalCade[p] == ',') || (decimalCade[p] == '.') ) {
|
||||
newInt += decimalCade[p];
|
||||
} else {
|
||||
newPluginDecimal += decimalCade[p];
|
||||
}
|
||||
}
|
||||
numberSet[0] = newInt;
|
||||
numberSet[1] = newPluginDecimal;
|
||||
}
|
||||
|
||||
var decimalSet = numberSet[1];
|
||||
var decimalCade = decimalSet.split('');
|
||||
var countDecimalNow = 0;
|
||||
for (p = 0; p < decimalCade.length; p++) {
|
||||
if (!isNaN(parseFloat(decimalCade[p])) && isFinite(decimalCade[p])) {
|
||||
countDecimalNow++;
|
||||
decimalString += decimalCade[p];
|
||||
} else {
|
||||
pluginDecimal += decimalCade[p];
|
||||
}
|
||||
}
|
||||
|
||||
if(countDecimalNow < countDecimal) {
|
||||
for(; countDecimalNow < countDecimal; countDecimalNow++) {
|
||||
decimalString += '0';
|
||||
}
|
||||
me.element.value = numberSet[0] + separatorField + decimalString + pluginDecimal;
|
||||
}
|
||||
me.element.value = numberSet[0] + separatorField + decimalString + pluginDecimal;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -968,6 +968,7 @@ class XmlForm_Field_Text extends XmlForm_Field_SimpleText
|
||||
var $function = '';
|
||||
var $replaceTags = 0;
|
||||
var $renderMode = '';
|
||||
var $comma_separator = '.';
|
||||
|
||||
|
||||
/**
|
||||
@@ -1012,6 +1013,7 @@ class XmlForm_Field_Text extends XmlForm_Field_SimpleText
|
||||
$html .= 'onkeypress="'.$this->htmlentities($onkeypress, ENT_COMPAT, 'utf-8').'" ';
|
||||
$html .= $this->NSDefaultValue().' ';
|
||||
$html .= $this->NSRequiredValue().' ';
|
||||
$html .= 'pm:decimal_separator="' + $this->comma_separator + '" ';
|
||||
$html .= '/>';
|
||||
}else{ //VIEW MODE
|
||||
$html .= $this->htmlentities($value, ENT_QUOTES, 'utf-8');
|
||||
|
||||
Reference in New Issue
Block a user