该代码从一个名为“ #orginalAddon”的隐藏输入字段中获取价格值,然后将任何其他插件的成本添加到该值中,并将结果显示给用户。
问题是,如果“ #orginalAddon”值超过1,000,则在“ #addonPrice”中计算出的总输出会被截断。

代码如下:

$( ".add_div" ).click(function(){
                $('#addons_loader').html('<div id="resloading"><img src="<?=BASE_URL?>/img/ajax-loader.gif" /></div>');

                var id = $( this ).attr('rel');
                $('#AddOnAddForm input#AddOnId').attr('value',id);

                /* load addon into addons li (session) */
                $.getJSON('<?=BASE_URL?>/res/addons_add/'+id, function(data) {

                    $('#addons_ajax').html('');
                    $('#addons_loader').html('');

                    var items = [];
                    var totalprice = 0;

                    // Generate elements for right side grey box listing addons
                    $.each(data, function(key, obj) {
                        items.push('<li id="' + obj.id + '">' + obj.title + '€' + obj.price + '</li>');
                        totalprice += parseFloat(obj.price);
                    });

                    $('<ul/>', {
                        'id': 'addons_list',
                        html: items.join('')
                    }).appendTo('#addons_ajax');

                    $("#addonPrice").html(parseFloat($("#orginalAddon").val()) + totalprice);

                });


任何建议表示赞赏...

最佳答案

如果将逗号分隔成几千个,请将其删除

例如:

parseFloat(obj.price.replace(/,/g,''));


编辑:

供您输入:

parseFloat($("#orginalAddon").val().replace(/,/g,''))

08-25 09:52