我有这个小脚本。我需要在我的购物篮中添加和删除元素。所以我有一个简单的计数器,但它不能正常工作。当我解析实际数字并添加另一个时,每个人都很好,但是 - 我不能再添加另一个,当我对其进行分类时,它会给我一个零。你能帮助我吗?我的代码和一些小提琴http://jsfiddle.net/5vuJQ/:
$(function(products_counter){
var n = parseInt($('.lce_number').text());
var n_place = $('.lce_number');
$('.lce_add').live('click', function(){
n_place.empty().append(n + 1);
});
$('.lce_remove').live('click', function(){
n_place.empty().append(n - 1);
});
});
答案 0 :(得分:4)
您必须在每次点击时从.lce_number
获取号码。请注意,live()
方法已弃用,您应使用on()
代替。
var n_place = $('.lce_number');
$('.line_count_elements').on('click', '.lce_add', function() {
var n = parseInt(n_place.text(), 10);
n_place.html(n + 1);
});
$('.line_count_elements').on('click', '.lce_remove', function() {
var n = parseInt(n_place.text(), 10);
n_place.html(Math.max(0, n - 1));
});
答案 1 :(得分:1)
您可以尝试这样做:
$(function(products_counter){
var n = parseInt($('.lce_number').text());
var n_place = $('.lce_number');
$('.lce_add').on('click', function(){
n_place.empty().append(++n);
});
$('.lce_remove').on('click', function(){
if(n>0)
n_place.empty().append(--n);
});
});
答案 2 :(得分:1)
$(function(products_counter){
var n = parseInt($('.lce_number').text());
$('.lce_add').live('click', function(){
$('.lce_number').text(parseInt($('.lce_number').text())+1);
});
$('.lce_remove').live('click', function(){
$('.lce_number').text(parseInt($('.lce_number').text())-1);
});
});
答案 3 :(得分:0)
$(function(products_counter){
var n_place = $('.lce_number');
$('.lce_add').live('click', function(){
var n = parseInt($('.lce_number').text());
n_place.empty().append(n + 1);
});
$('.lce_remove').live('click', function(){
var n = parseInt($('.lce_number').text())
n_place.empty().append(n - 1);
});
});
答案 4 :(得分:0)
$(function(products_counter){
var n_place = $('.lce_number');
$('.lce_add').live('click', function(){
var n = parseInt($('.lce_number').text());
n_place.empty().append(n + 1);
});
$('.lce_remove').live('click', function(){
var n = parseInt($('.lce_number').text());
n_place.empty().append(n - 1);
});
});
每次点击后您需要获得n
的值!
答案 5 :(得分:0)
$('.lce_add').live('click', function(){
n_place.empty().append(n + 1);
});
代码中的上一行不修改' n '的值
首先 - n = 1
点击第一次 - 追加(n + 1) - > 1+ 1 --->结果显示为2
n 仍为1
点击第二次 - 追加(n + 1) - > 1+ 1 - >再次导致2
n 仍为1,因此会重复
您需要修改“ n ”的值调用append()
$('.lce_add').live('click', function(){
n = n + 1;
n_place.empty().append(n);
});