大家好,所以我有一个数据库设置了不同成分的值,每个值都是一个整数,所以芒果在数据库中有2个值。我决定我实际上需要使用十进制数字,所以芒果现在有0.2值。问题是,一旦我改变它我的加法和减法已完全停止工作。
我的直播网站在这里:这是使用整数: http://diet.elementalbydesign.com/bootstrap-3.3.6-dist/build.php
你可以在脂肪标签内的右侧看到它如何增加和减去以下值: 苹果,香蕉,芒果,甜瓜等。
然而就像我上面在我的数据库中所说的那样,我将它从整数改为小数,因为我需要它以这种方式工作,但现在我不能像以前那样添加或减去。
在我的数据库中我将脂肪设置为十进制(2,1)。大多数营养看起来像0.4 0.2等。
JS:
$(document).ready(function(){
var current_fat = 0;
$('.searchFunction').keyup( function( event ) {
if(event.keyCode != 8 && event.keyCode != 46) {
var search_term = $("#search_term").val();
if(search_term != '') {
$.get( 'build.php', { search_term:search_term }, function( data ) {
$('.result').html( data );
});
}
}
});
$('.result').on('click', 'li', function( event ) {
var result_value = $(this).text();
$('#search_term').val(result_value);
$('.result').html('');
});
$('#addButton').on('click', function( event ) {
if($('#search_term').val() ==''){
alert('please fill something in text box');
}else{
var searchedValue = $('#search_term').val();
temp = $("#fat").text();
temp = parseInt(temp);
$.post( 'build.php', { 'search_term':searchedValue, 'current_fat':temp }, function(data) {
$('#fat').text( parseInt( $('#fat').text( ) ) + parseInt( data ) )
var divHolder = $('.selectedStuff');
$("<div>" + searchedValue + "<span data-fat='"+data+"' data-itemfat='"+data+"'>X</span></div>").css({
'background-color': 'yellow',
'width': '700px',
'margin-top': '10px',
'border-style': 'solid',
'border-color': '#0000ff'
}).appendTo(divHolder);
});
}
});
$('.selectedStuff').on("click", 'span', function(){
var curr_fat = parseInt($("#fat").html()),
toberemovedfat = parseInt($(this).attr('data-fat'));
curr_fat = curr_fat - toberemovedfat;
$("#fat").html(curr_fat);
$(this).parent().remove();
});
});
对此问题的任何帮助都将是一个很大的帮助
谢谢
答案 0 :(得分:2)
您需要将parseInt
切换为parseFloat
。 Int用于整数,但浮点数可以是整数或十进制数:
$('#fat').text( (parseFloat( $('#fat').text( ) ) + parseFloat( data )).toFixed(2) )
和
toberemovedfat = parseFloat($(this).attr('data-fat'));