代码从名为'#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);
});
任何建议表示赞赏......
答案 0 :(得分:3)
如果你把逗号分开数千,请将其删除
e.g:
parseFloat(obj.price.replace(/,/g,''));
编辑:
输入内容:
parseFloat($("#orginalAddon").val().replace(/,/g,''))