使用jquery增加或减少值

时间:2014-04-14 07:40:38

标签: javascript jquery html

我有一个javascript变量,它是当前日期的天数。

我想通过点击按钮让用户转到上一个日期。

这里是fiddle

尝试谷歌搜索,但我不明白或任何事情对我有帮助。

我可以通过在日变量中提供-1来减少一天。但我无法弄清楚如何在每次点击时减少它。

有人帮助我如何减少和增加点击这些按钮的日期?

提前致谢。

3 个答案:

答案 0 :(得分:1)

您的代码中存在一些问题。主要的一点是,您在每个按钮上创建一个新的日期对象,并单击当前日期。这就是为什么你每次都得到相同的结果。

如果您只想在日期之后添加或删除一天,请执行以下操作:

var currentDate = new Date();    
$('button').click(function() {
    var add = $(this).hasClass('increase_date') ? 1 : -1;
    currentDate.setDate(currentDate.getDate()+add);
    $('.display_date').html(currentDate);    
})

http://jsfiddle.net/3VQZy/

答案 1 :(得分:0)

将当前日期存储在global variable&使用-= operator就可以使用当前值将其减1。

像这样http://jsfiddle.net/SYRDR/2/ 我只展示了如何减少它,你必须添加更多的条件来正确格式化日期

答案 2 :(得分:0)

演示:http://jsfiddle.net/SYRDR/14/

$(document).ready(function() {
        showDate(0);
        $('.decrease_date').click(function() {
            showDate(-1);        
        });
        $('.increase_date').click(function() {
            showDate(1);        
        });
    })

    function showDate(change)
    {
        var current_date;    
        if(change == 0)
        {
            current_date = new Date();
        }
        else
        {
            current_date = new Date($('.display_date').html());
        }        
            var year = current_date.getFullYear();
            var month = "0" + (current_date.getMonth() + 1);
            var day = current_date.getDate();

        if(change == -1)
        {
            day = day - 1;
        }    
        if(change == 1)
        {
            day = day + 1;
        }
            var start_date2 = year + "-" + month + "-" + day;        
            $('.display_date').html(start_date2);
    }