Jquery如何减去元素

时间:2016-03-22 11:55:07

标签: javascript php jquery mysql ajax

大家好,所以我想制作一个像这样的营养标签:Example

Curretnly我的数据库全部设置完毕。试图让它在目前工作一件事,然后可以与其余的一起做。

我的数据库看起来像:

ingName: ....
fat: ... 
carbs ... etc

我现在遇到的问题是巨大的。我在过去的3天里一直被困在它上面,似乎没有人知道什么是错的,我有一个十字架创建的div,以便用户可以删除他添加的成分。所以,如果他们有:

Apple : 1g
Mango : 2g 
Melon: 3g 
Total : 6g 

让我们说他们不再需要甜瓜然后它应该看起来像

Apple: 1g
Mango: 2g
Total: 3g

然而,我似乎无法让它工作。每当我在红叉上计时时,它实际上只是使标签中的数字变为空白。

我的直播网站: http://diet.elementalbydesign.com/bootstrap-3.3.6-dist/build.php

我不能强调我已经多久坚持这个问题以及有多少人试图帮助我但是没有人想到这一点,我只是在这里的墙上,真的需要有人让我出局: )

我的实时网站再次向您展示正在发生的事情:我的实时网站: http://diet.elementalbydesign.com/bootstrap-3.3.6-dist/build.php

你可以看到你可以添加所有元素等,但是当谈到带走时,它会变成一个混乱,如果有人解决了这个问题会给他们一个cookie,如果我看到你:) 谢谢

编辑:这是我来的壁橱,但每次都需要-1而不是数据库中设置的数量

                        $('.selectedStuff').on("click", 'span', function(){
                            var fat = parseInt($("#fat").html());
                            fat = fat - 1;
                            $("#fat").html(fat);
                            $(this).parent().remove();  
                        }); 
});

2 个答案:

答案 0 :(得分:1)

首先,我认为Pekka是对的,你应该删除整个div而不是span。否则,黄色框会一直亮着。

但问题是当你搜索一个项目时,你会

 echo "<script>$('#fat').html(".$total_fat.");</script>";
 echo $row['fat'];

然后在你的JavaScript中

<span data-fat='"+data+"' data-itemfat='"+data+"'>

你真的有

<span data-fat="<script>$(" #fat').html(2);<="" script="">2' data-itemfat='<script>$('#fat').html(2);</script>2'&gt;X</span>

请尝试删除此行:

echo "<script>$('#fat').html(".$total_fat.");</script>";

写作时

var temp = 0; 
$('.result').val( data ); 
$('#fat').html(data);
temp = data;

temp = $("#fat").val(); 
temp = data; 
current_fat += data; 
$("#fat").val(current_fat);
$('#fat').html(current_fat);

未正确添加值。首先使用parseInt尝试修复它。 原来的删除实际上似乎有效!

建议:将以上所有代码块替换为:

$('#fat').text( parseInt( $('#fat').text( ) ) + parseInt( data ) )

答案 1 :(得分:0)

如何而不是删除点击的项目

$(this).remove(); /* REMOVE THE DISPLAY OF REMOVED INGREDIENT */

你删除了父div(包括红叉),如:

$(this).parent().remove();

那会有帮助吗?