Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
2800 Zobrazení

Does anyone know how to automatically convert Japanese full width number ex. [ 2], be automatically converted into half width number  [ 2 ] when inputted in an integer field?

Right now, full width number will be regarded  as  text  and  show  that  the  field  has  an  invalid  input. What I want is to automatically convert the inputted number and proceed with normal saving process.


Avatar
Zrušit
Autor

I was able to figure out by extending FieldInteger of basic_fields. If by any chance this could be made better, I would love to hear your suggestions, if any.

FieldInteger.include({
/**
* @override
* @returns {string} the content of the input
*/
_getValue: function () {
return this.$input.val();
},
/**
* Trim the value input by the user.
*
* @override
* @private
* @param {any} value
* @param {Object} [options]
*/
_setValue: function (value, options) {
value = this._convertToHalfWidth(value.trim());
return this._super(value, options);
},
_convertToHalfWidth: function(str) {
return str.replace(/[!-~]/g, r => String.fromCharCode(r.charCodeAt(0) - 0xFEE0));
},
})

Related Posts Odpovědi Zobrazení Aktivita
2
čvn 25
1206
0
kvě 25
12
1
bře 25
786
2
led 25
2764
1
pro 24
6435