in src/Foundation/Theming/code/scripts/autoNumeric.js [1150:1196]
set: function (valueIn) {
if (valueIn === null) {
return;
}
return $(this).each(function () {
var $this = autoGet($(this)),
settings = $this.data('autoNumeric'),
value = valueIn.toString(),
testValue = valueIn.toString();
if (typeof settings !== 'object') {
$.error("You must initialize autoNumeric('init', {options}) prior to calling the 'set' method");
return this;
}
/** routine to handle page re-load from back button */
if (testValue !== $this.attr('value') && $this.prop('tagName').toLowerCase() === 'input' && settings.runOnce === false) {
value = (settings.nBracket !== null) ? negativeBracket($this.val(), settings.nBracket, 'pageLoad') : value;
value = autoStrip(value, settings);
}
/** allows locale decimal separator to be a comma */
if ((testValue === $this.attr('value') || testValue === $this.text()) && settings.runOnce === false) {
value = value.replace(',', '.');
}
/** returns a empty string if the value being 'set' contains non-numeric characters and or more than decimal point (full stop) and will not be formatted */
if (!$.isNumeric(+value)) {
return '';
}
value = checkValue(value, settings);
settings.oEvent = 'set';
value.toString();
if (value !== '') {
value = autoRound(value, settings);
}
value = presentNumber(value, settings.aDec, settings.aNeg);
if (!autoCheck(value, settings)) {
value = autoRound('', settings);
}
value = autoGroup(value, settings);
if ($this.is('input[type=text], input[type=hidden], input[type=tel], input:not([type])')) { /**added hidden type */
return $this.val(value);
}
if ($.inArray($this.prop('tagName').toLowerCase(), settings.tagList) !== -1) {
return $this.text(value);
}
$.error("The <" + $this.prop('tagName').toLowerCase() + "> is not supported by autoNumeric()");
return false;
});
},