用户的价格格式,但保存为INT

时间:2013-01-22 21:40:16

标签: jquery currency

我使用wordpress和插件JQ Price Format格式化输入['preco-novo']上的数字,因此用户输入eq 3400000并显示34.000,00。问题是我需要将其保存为INT,此插件正在编辑数字并保存为浮点数。有什么想法吗?

 jQuery(document).ready(function ($) {  $('input[name="wpcf[preco-novo]"]').priceFormat({
    prefix: '',
    centsSeparator: ',',
    thousandsSeparator: '.' }); }); JQuery('input[name="wpcf[preco-novo]"]').focusout(function($) {     $('input[name="wpcf[preco-novo]"]').priceFormat({
    prefix: '',
    centsSeparator: '',
    thousandsSeparator: '' }); });

4 个答案:

答案 0 :(得分:0)

为什么不使用Math.floor(your_float)

答案 1 :(得分:0)

尝试使用parseInt功能

答案 2 :(得分:0)

好吧,由于wordpress兼容性错误预防,我遇到了$ jQuery的问题。

工作代码是这样的:

jQuery('input[name="wpcf[preco-novo]"]').focus(function ($) {
    jQuery('input[name="wpcf[preco-novo]"]').priceFormat({
        prefix: '',
        centsSeparator: ',',
        thousandsSeparator: '.'
    });
});
jQuery('input[name="wpcf[preco-novo]"]').focusout(function ($) {
    jQuery('input[name="wpcf[preco-novo]"]').priceFormat({
        prefix: '',
        centsSeparator: '',
        thousandsSeparator: ''
    });
});

感谢所有善意分享您知识的人

答案 3 :(得分:0)

我不确定您为什么要将价格保存为int,但这里几乎没有选择。让你的拥有priceFormatunFormat功能不难,避免使用外部jQuery插件来处理像这样的小事:

function priceFormat (num) {
    num = isNaN(num) || num === '' || num === null ? 0.00 : num;
    return parseFloat(num).toFixed(2);
}

function unFormat(num){
    return parseInt((num).replace('.',''));
}

然后你可以这样做:

$('input[name="wpcf[preco-novo]"]').focus(function(){
    $(this).val(priceFormat($this.val());
}).focusout(function(){
    $(this).val(unFormat($this.val());
});